|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre éclairé
![]() Inscription : novembre 2004 Messages : 373 ![]() |
Bonjour
J'ai essayé mais je n'y arrive pas ... Je précise que je suis obligé de travailler en Mysql 3.14. donc pas de ss-rq ! Voila le topo. J'ai une table suggestions : sug_id sug_desc sug_date ... Une table estimations liée : est_id est_sug_id ( ma clé étrangère provenenant de suggestions) est_date ... Et pour finir une table notes liée : not_id not_sug_id ( ma clé étrangère provenenant de suggestions) note_date est_date est la date ou la suggestion est émise. Quand une estimation est attachée à une suggestion, je crée un ligne dans estimation avec la date du jour. Ce qui implique que si aucune estimation n'a été réalisée pour une idée, elle ne se trouve pas dans cette table ... Idem pour note. L'idée est de remonter les 10 suggestions oubliées càd celle pour lesquelles la date la plus récente en base ( parmi sug_date, est_date , not_date ) est la plus ancienne. Si vous avez lu jusqu'ici , merci déjà pour votre patience .
__________________
Take it HiSy |
|
|
00
|
|
|
#2 | |
|
Membre actif
![]() Inscription : mai 2005 Messages : 272 ![]() |
Citation:
__________________
Goah Sha Kree |
|
|
|
00
|
|
|
#3 |
|
Membre éclairé
![]() Inscription : novembre 2004 Messages : 373 ![]() |
He ben en fait pour chaque ecriture j'ai une nouvelle date .
Je peux donc avoir 3 dates pour une suggestion donnée. Je veux les 10 suggestions pour lesquelle la plus récente de ces 3 date est la plus ancienne ... En gros ... Si j'ai une suggestion avec comme dates : 2004-06-01 // 2005-01-01 // 2006-01-01 Je veux qu'elle soit considérée comme plus ancienne qu'une avec des dates : 2004-05-12 // 2006-06-14 // 2006-01-01 Parce que sa date la plus récente est plus ancienne que la date la plus récente de la 2eme suggestion ... JE me noie ... SOS
__________________
Take it HiSy |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Inscription : février 2006 Messages : 953 ![]() |
Code :
Je suis parti sur des liaisons 1-1. Si les estimations et autres peuvent être multiples il faudra ajouter un 'GROUP BY sug_id' et utiliser 'MIN(est_date)' plutôt que est_date (idem note). Mais ça fait un produit cartésien entre estimations et notes... Ca marche quand même mais c'est pas terrible, seulement sans procédures imbriquées je ne vois pas de contournement. Il y a aussi un problème avec l'absence d'estimation (ou de note) qui donne est_date nulle et GREATEST renvoie alors NULL (comme beaucoup de fonctions MySQL). Ca peut se contourner en utilisant IFNULL sur est_date et une date par défaut qui remonte à avant le déluge. |
||
|
|
00
|
|
|
#5 |
|
Membre éclairé
![]() Inscription : novembre 2004 Messages : 373 ![]() |
Bonjour
ma version de mySQL ne connait pas le GREATEST ... ( et moi non plus a vrai dire ) ...
__________________
Take it HiSy |
|
|
00
|
|
|
#6 | |
|
Membre Expert
![]() Inscription : février 2006 Messages : 953 ![]() |
Ca va devenir compliqué... Passer à une version plus récente, c'est jouable ?
La doc donne : Citation:
Autre possibilité, imbriquer plusieurs IF pour coder un maximum sur trois éléments. Moche mais efficace. |
|
|
|
00
|
|
|
#7 |
|
Membre éclairé
![]() Inscription : novembre 2004 Messages : 373 ![]() |
Ben en fait ... le GREATEST() passe ...
Je suis allé un peu vite pour répondre ... Merci bcp
__________________
Take it HiSy |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com