Página 1 de 1

Mysql: curdate()

Enviado: 31 Out 2020 23:29
por cjp
Pessoal,
Estou obtendo uma resposta estranha na função curdate(). Curdate()+1 está retornando "20.201.032". Vejam o anexo, por favor.
Alguém sabe me dizer por que isso? E como resolver isso?

Mysql: curdate()

Enviado: 01 Nov 2020 01:19
por alxsts
Olá!
cjp escreveu:Alguém sabe me dizer por que isso?
Por que MySQL funciona de forma diferente de xBase
cjp escreveu:E como resolver isso?

Código: Selecionar todos

SELECT CURDATE() + INTERVAL 1 DAY
Ou

Código: Selecionar todos

SELECT DATE_ADD( CURDATE(), INTERVAL 1 DAY)
Ou

Código: Selecionar todos

SELECT DATE_ADD( DATE( NOW() ), INTERVAL 5 DAY)

Mysql: curdate()

Enviado: 01 Nov 2020 16:01
por cjp
Entendi.
Já tinha usado interval.
Mas vi exemplos na internet com curdate()+1, e estava funcionando; e hoje voltou a funcionar. Não entendi porque ontem não funcionou.
Muito obrigado.

Mysql: curdate()

Enviado: 14 Mar 2021 08:42
por asimoes
Outra solução:

SELECT CONVERT( CURDATE() + 1, DATE)
SELECT CAST( CURRENT_DATE() + 1 AS DATE )
SELECT CURRENT_DATE() + INTERVAL 20 DAY AS DATAX FROM DUAL

Formatando a data para DD/MM/YYYY

SELECT DATE_FORMAT( CURRENT_DATE() + INTERVAL 20 DAY, "%d/%m/%Y");

SELECT CAST( DATE_FORMAT( CURRENT_DATE() + INTERVAL 30 DAY, "%d/%m/%Y") AS CHAR)

É o mais apropriado para intervalos maiores, nos exemplos acima retorna null se coloca + 30

SELECT CURDATE() + INTERVAL 20 DAY