MySQL adiciona dias a uma data

Eu tenho uma tabela no MySQL. Qual seria a declaração sql parece adicionar dois dias para o valor da data atual na tabela?

UPDATE classs SET date = date + 1 where id = 161 

isso adiciona um segundo para o valor, não quero atualizar o tempo, eu quero adicionar dois dias?

Assumindo que seu campo é um tipo de date (ou similar):

 SELECT DATE_ADD(`your_field_name`, INTERVAL 2 DAY) FROM `table_name`; 

Com o exemplo que você forneceu, pode ser assim:

 UPDATE classs SET `date` = DATE_ADD(`date` , INTERVAL 2 DAY) WHERE `id` = 161; 

Essa abordagem também funciona com datetime e datetime .

 UPDATE table SET nameofdatefield = ADDDATE(nameofdatefield, 2) WHERE ... 

Esta consulta é válida para buscar os valores entre a data atual e as próximas 3 datas

 SELECT * FROM tableName WHERE columName BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 3 DAY) 

Isso acabará adicionando 3 dias extras de buffer à data atual.

 update tablename set coldate=DATE_ADD(coldate, INTERVAL 2 DAY) 
 SELECT DATE_ADD(CURDATE(), INTERVAL 2 DAY) 

Para sua necessidade:

 UPDATE classs SET `date` = DATE_ADD(`date`, INTERVAL 2 DAY) WHERE id = 161 
  DATE_ADD(FROM_DATE_HERE, INTERVAL INTERVAL_TIME_HERE DAY) 

dará a data depois de ajustar o INTERVAL

por exemplo.

 DATE_ADD(NOW(), INTERVAL -1 DAY) for deducting 1 DAY from current Day DATE_ADD(NOW(), INTERVAL 2 DAY) for adding 2 Days 

Você pode usar como

 UPDATE classs WHERE date=(DATE_ADD(date, INTERVAL 1 DAY)) WHERE id=161 
 SET date = DATE_ADD( fieldname, INTERVAL 2 DAY )