Bonjour à tous,
Je suis venu à l'aide car j'ai jamais eu ce type de problème avec une requête SQL.
L'exemple est très parlant :
Si j'exécute cette requête :
Le résultat est : 1261 (rien d'anormal)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select datediff(second,date_alarme,date_deb_inter) from interventions where datediff(second,date_alarme,date_deb_inter) <= 3600 and num_inter in ('6870556')
Si j'exécute celle ci :
Le résultat est :1655 (rien d'anormal)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select datediff(second,date_alarme,date_deb_inter) from interventions where datediff(second,date_alarme,date_deb_inter) <= 3600 and num_inter in ('6809234')
Par contre si j'exécute celle ci (réunification des deux):
Voici la réponse de SQL.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 select datediff(second,date_alarme,date_deb_inter) from interventions where datediff(second,date_alarme,date_deb_inter) <= 3600 and num_inter in ('6870556','6809234')
Vous me direz pourquoi ne pas faire à la minute (parce que ça fonctionne si si), le problème est que SQL sur des différences de dates à la minute fait des arrondis et ça m'arrange pas.Msg 535, Level 16, State 0, Line 1
Difference of two datetime columns caused overflow at runtime.
J'espère que vous pourrez m'aider
Merci à vous par avance.
Partager