|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : avril 2005 Messages : 93 ![]() |
Bonjour,
MySQL 5.0.51a J'ai une table qui en gros contient les infos suivantes (OBJET [CHAINE],DATE D AJOUT [DATE]). Chaque jour des objets sont insérés et je voudrai savoir quel objets ont été inséré la veille mais pas le jour courant. En gros mes objet insérés hier minus mes objets insérés aujourd'hui. En regardant la donc mysql j'ai vu que le minus n'existait pas (oui je decouvre mysql) du coups j'ai voulu le faire à base de jointure externe avec clé à droite = nulle. Solution qui fonctionnellement revient au meme. Mon problème est que ma requête ne me renvoie pas le resultat escompté, et que j'ai l'impression que ma condition WHERE CLE DE MA TABLE A DROITE IS NULL ne fonctionne pas comme une condition post jointure comme sur oracle par exemple. En élagant ma requete je suis tombé sur ce cas que je trouve bizarre. Mes conditions pre jointure sur la date contenue dans ma table devrait me permettre de filtrer les bonnes date pour VEILLE et JOUR mais je tombe sur le résultat suivant alors que je ne devrait avoir que la date de sysdate -1 jour Code :
Merci d'avance |
||
|
|
00
|
|
|
#2 | ||||
![]() ![]() |
Avec la requête remise en forme, on voit déjà un problème qui est peut-être la cause de ton mauvais résultat :
Code :
Pourquoi veux-tu formater les dates dans les conditions ? Si ta colonne est de type DATE, c'est inutile ! Et en utilisant la fonction standard SQL CURRENT_DATE, la comparaison devrait se faire sans souci. Essaie comme ceci : Code :
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||||
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : avril 2005 Messages : 93 ![]() |
Merci pour ta réponse.
J'ai laissé la condition dans la clause de jointure car j'étais parti sur un FULL OUTER ... avant de voir que ça n'existait pas. Du coups en effet la restriction de ma table gauche dans la jointure n'était pas tres élégante même si je ne voit pas en quoi cela peut poser problème (en comparaison à d'autres sgbd que je connais) Toujours est il que le problème vient bien de la ![]() Pour tes autres questions : le CURRENT_DATE j'ai du y passer à coté dans la doc. Et le bout de requète que j'ai envoyé sans les objet et la portion sur laquelle j'avait identifié le problème, j'ai viré tout ce qui marchait pour être succint. En tout cas merci beaucoup. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com