ERRO: ORA-00904: DATEDIFF: identificador inválido
05/10/2015
0
Ex: De 01/01/2015 a 31/12/2015 tem 365 dias
SELECT DATEDIFF('31/12/2015', '01/01/2015')
FROM DUAL
ERRO: ORA-00904: "DATEDIFF": identificador inválido
André
Posts
07/10/2015
Gisely Santos
07/10/2015
Gisely Santos
07/10/2015
André
[img]http://arquivo.devmedia.com.br/forum/imagem/457143-20151007-095451.jpg[/img]
07/10/2015
Gisely Santos
SELECT DATEDIFF(campo,'2014-12-31') , lembrado que o seu campo 'campo' tem de estar no formato Y-m-d, caso contrario vai dar erro.
O que você esta fazendo é tentando extrair a diferença de dois campos com formato errado, e além disso um deles possui também o horário... dessa forma não vai dar certo mesmo.
Você testou o que te falei no post acima? as duas datas apenas ( sem o horário) no formato ano-mes-dia?
07/10/2015
André
Você não alguma outra forma de fazer sem usar o DATEDIFF não ?
07/10/2015
Gisely Santos
Você quer calcular a diferença de dias de uma data do seu banco de dados? Esse DUAL seria sua tabela? Qual o nome do campo que esta com a data?
07/10/2015
Marcos P
O link que passei é a documentação oficial do MySql... não existe erro algum nos exemplos !
Se quiser confirmar, veja o exemplo que preparei em Fiddle
07/10/2015
André
Dual substitui uma tabela qualquer do sistema.
Se eu quiser pegar uma data qualquer do sistema usando from dual da certo.
07/10/2015
Marcos P
Percebeu que :
SELECT DATEDIFF('2007-12-31 23:59:59','2007-12-30');
2007-12-31 23:59:59 - 2007-12-30 = 1 ( dia )
SELECT DATEDIFF('2010-11-30 23:59:59','2010-12-31')
2010-11-30 23:59:59 - 2010-12-31 = -31 ( dias )
Qual parte disso, você não entendeu ?
07/10/2015
André
O problema é quando eu jogo la no Oracle Sql Developer ele da erro ..
Dá identificador invalido no DATEDIFF
Clique aqui para fazer login e interagir na Comunidade :)