Sous-requête et MAX()
Fermé
chile
-
Modifié le 11 janv. 2021 à 09:13
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 - 11 janv. 2021 à 15:57
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 - 11 janv. 2021 à 15:57
A voir également:
- Sous-requête et MAX()
- I14 pro max - Guide
- Max tv gratuit - Télécharger - Télévision
- 6play max - Guide
- Football max avis - Forum Consommation & Internet
- Max maillot avis - Forum Consommation & Internet
2 réponses
Reivax962
Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
11 janv. 2021 à 14:14
11 janv. 2021 à 14:14
Bonjour,
Dans le WHERE de ta sous-requête, il manque AND date_envoi IS NOT NULL pour que le MAX(version) s'applique à celles qui sont sélectionnables par ta requête principale.
Cela devrait refaire apparaître des résultats manquants.
Xavier
Dans le WHERE de ta sous-requête, il manque AND date_envoi IS NOT NULL pour que le MAX(version) s'applique à celles qui sont sélectionnables par ta requête principale.
Cela devrait refaire apparaître des résultats manquants.
Xavier
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
11 janv. 2021 à 14:27
11 janv. 2021 à 14:27
bonjour,
moi je ferais d'abors une requête qui retourne code_circuit et max(version).
ensuite j'ajouterais cela comme sous-requête à la première requête, ainsi:
moi je ferais d'abors une requête qui retourne code_circuit et max(version).
ensuite j'ajouterais cela comme sous-requête à la première requête, ainsi:
SELECT devis_itineraires_versions.code_circuit, devis_itineraires_versions.date, devis_itineraires_versions.date_envoi, devis_itineraires_versions.version, devis_voyages.code_circuit, devis_voyages.code_client, devis_voyages.nom_conseiller FROM devis_itineraires_versions INNER JOIN devis_voyages ON devis_itineraires_versions.code_circuit = devis_voyages.code_circuit INNER JOIN (la sous requete) m ON m.maxversion = devis_itineraires_versions.version AND m.code_circuit = devis_itineraires_versions.code_circuit WHERE nom_conseiller ='$prenom' AND date_envoi IS NOT NULL ORDER BY date DESC
Reivax962
Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
11 janv. 2021 à 14:52
11 janv. 2021 à 14:52
Oui c'était mon option suivante si la modif "facile" ne fonctionnait pas, c'est plus propre :)
Ceci dit même dans ce cas, la sous-requête DOIT contenir la clause sur date_envoi
Ceci dit même dans ce cas, la sous-requête DOIT contenir la clause sur date_envoi
chile
>
Reivax962
Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
11 janv. 2021 à 15:13
11 janv. 2021 à 15:13
oui c'était date_envoi IS NOT NULL qui manquait dans la sous requete. Merci
yg_be
Messages postés
22720
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2024
1 476
>
Reivax962
Messages postés
3671
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
11 janv. 2021 à 15:57
11 janv. 2021 à 15:57
je me demande si toutes les db SQL gèrent bien une telle sous-requête impliquant une table hors de la sous-requête.
et le type de db n'est pas mentionné.
et le type de db n'est pas mentionné.
11 janv. 2021 à 15:10
Ca marche nickel !
Merci