Requete complexe

Résolu
dna.factory Messages postés 26003 Date d'inscription   Statut Modérateur Dernière intervention   -  
dna.factory Messages postés 26003 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

J'aurais besoin d'aide pour réaliser une requête.
C'est pas tout ça fait la même chose, mais en gros, ça revient à trier les clients (par nom et pas par Id), en fonction de la date de leur dernière facture/commande
De part la valeur ajoutée de ce genre de requête (recherche de prospect, je suppose que c'est souvent réalisé, mais je bloque au départ...)

un peu d'architecture de la base :
On a la table client :
client
------
id(auto)
nom

et on a la table commande, en relation évidement 1,n (un client peut avoir plusieurs commandes, mais chaque commande a 1 et 1 seul client)
(par simplification, et dans mon cas, un client à obligatoirement une commande)

commande
-----
id(auto)
idclient (foreing)
date

et je veux donc récupérer la liste des clients (je peux avoir d'autres colonnes si obligatoire, je ferais un awk par la suite) dans l'ordre de leur derniere commande, du plus récent au plus ancien

Si un client à commandé plusieurs fois, il ne doit apparaitre qu'une seule fois.

je suppose qu'il y a du group et du having, mais j'avoue que là, je patauge complètement...

Cdt,

Ps : point bonus si la requete est lourde (oui, oui, vous avez bien lui, je dois aussi trouver une requête qui me permete de tester la réactivité de la base, donc j'ai besoin d'une requete un peu lourde).
Je sais qu'on est tous bénévole, mais c'est un peu de la prod, et idéalement j'en aurais besoin aujourd'hui


Par contre, c'est pas vital non plus, je pourrais me débrouiller autrement si j'ai pas de réponse (et je suis de toute façon interessé pour la prochaine fois).




1 réponse

benol3 Messages postés 570 Date d'inscription   Statut Membre Dernière intervention   87
 
Salut,

A tester :

SELECT nom, max(commande.date)
FROM client, commande
WHERE client.idclient = commande.idclient
GROUP BY nom
ORDER BY max(commande.date) desc
1
dna.factory Messages postés 26003 Date d'inscription   Statut Modérateur Dernière intervention   1 619
 
Ca a l'air de faire ce que j'ai demandé...
Reste à savoir si j'ai demandé ce que je voulais :)

Merci beaucoup.
0