06/04/2005 @ 03:48:57: zion: Encore une jolie fortune MySQL...
Roh... 10 minutes que je demande pourquoi un query déconne, merci MySQL
Je fais une comparaison sur un TO_DAYS, pour avoir les rows n'ayant pas la date du jour, sachant que j'ai un paquet de rows qui datent d'il y a qqs temps ou y avait pas encore ce champ et qui sont donc tous à 0000-00-00.
Et bien (TO_DAYS(Champ) <> TO_DAYS(NOW()), ca ne me sort pas les rows avec 0000-00-00 car TO_DAYS me balance un NULL ( :fou ) et refuse donc logiquement la comparaison ...
Donc, en gros, TO_DAYS(0) = TO_DAYS(NOW()), très pratique
09/04/2005 @ 14:08:55: Poire: Encore une jolie fortune MySQL...
j'en ai pas mal des comme ça avec SQL Server
09/04/2005 @ 16:35:02: cauet: Encore une jolie fortune MySQL...
C'est jouissif hein?
Surtout qu'au début on se remet en question.. "Et si c'est moi qui merde qq part ?" "Tiens vais aller voir la doc" "Et mer.. c'est correct!!"
10/04/2005 @ 00:59:45: zion: Encore une jolie fortune MySQL...
Oui, bah ca aura été vite testé, j'ai fais un SELECT TO_DAYS(0), et il m'a sorti NULL, c'était clair, mais j'étais sur le cul quand même
Ca n'a pas de sens, et pourquoi je pourrais pas foutre 0 si j'ai envie
10/04/2005 @ 08:20:23: gizmo: Encore une jolie fortune MySQL...
Ouais, enfin, ici faut pas blamer MySQL, son comportement est normal. en SQL, tu ne peux pas effectuer d'opération sur un champs null, donc la comparaison ne s'applique pas et les résultats ne peuvent pas être sorti. TO_DAY n'est pas non plus en tord car y a jamais eu d'an 0, donc pas de conversion possible. Eventuellement ils auraient pu sortir un message d'erreur plutôt que NULL.
Par contre, la grosse connerie de MySQL, c'est de continuer à mettre 0000-00-00 comme date par défault a un champs date non nul lorsque l'on ne met pas la date, alors qu'il devrait refuser l'insertion...
10/04/2005 @ 20:32:48: zion: Encore une jolie fortune MySQL...
Cest compréhenseible, le NULL qu'on ne compare pas, pas de soucis, mais que par défaut il foute un 0000-00-00 et qu'un TO_DAYS() de 0000-00-00 ca donne NULL, ca n'a pas de sens
Qu'il retourne 0 ou se vautre, ok, mais NULL je m'y attendais pas du tout
11/04/2005 @ 18:41:48: gizmo: Encore une jolie fortune MySQL...
bah pourtant, c'est ce qu'il y a de plus logique à retourner, le 0 n'a, lui, pas de sens car ce n'est pas une date. Ce qui est juste vraiment très con, c'est qu'ils aient un jour eu l'idée d'inventer cette date stupide.
11/04/2005 @ 18:51:31: cauet: Encore une jolie fortune MySQL...
c'est les catholiques qui ont poussé pour avoir cette date.
le début de tout, naissance de jésus christ!
bon ok, je pourris, mais mettons un peu de bonne humeur, c'est bientôt l'été
11/04/2005 @ 18:58:01: zion: Encore une jolie fortune MySQL...
bah pourtant, c'est ce qu'il y a de plus logique à retourner, le 0 n'a, lui, pas de sens car ce n'est pas une date. Ce qui est juste vraiment très con, c'est qu'ils aient un jour eu l'idée d'inventer cette date stupide.
j'aurais préféré une erreur perso
11/04/2005 @ 19:21:19: gizmo: Encore une jolie fortune MySQL...
c'est les catholiques qui ont poussé pour avoir cette date.
le début de tout, naissance de jésus christ!
bon ok, je pourris, mais mettons un peu de bonne humeur, c'est bientôt l'été
ouais, enfin, selon la bible, le christ il est plutôt né le 25 décembre de l'an -1. Et selon les historiens, il serait plutôt de mai...
11/04/2005 @ 19:26:40: cauet: Encore une jolie fortune MySQL...
C'est ballot à 5 jours près..
12/04/2005 @ 00:59:40: Sam: Encore une jolie fortune MySQL...
qu'est ce qu'il faut pas entendre
13/04/2005 @ 06:34:06: Poire: Encore une jolie fortune MySQL...
si on fait champ1+champ2 et que champ2 est null, ça renvoit null SQL serveur
13/04/2005 @ 17:51:14: gizmo: Encore une jolie fortune MySQL...
bah oui, c'est normal.
21/04/2005 @ 17:48:53: Poire: Encore une jolie fortune MySQL...
non, c'est mal
21/04/2005 @ 21:41:32: gizmo: Encore une jolie fortune MySQL...
faut dire ça à ceux qui font la norme SQL alors
22/04/2005 @ 01:16:38: zion: Encore une jolie fortune MySQL...
Si c'est les mêmes que ceux qui ont fait la norme XHTML 1.1 j'ai deux mots à leur dire