1- Aide Requête SQL
chabacha109
Messages postés
268
Date d'inscription
Statut
Membre
Dernière intervention
-
chabacha109 Messages postés 268 Date d'inscription Statut Membre Dernière intervention -
chabacha109 Messages postés 268 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
fournisseur(numf,nomf)
numf | nomf
1 | fournisseur1
2 | fournisseur2
3 | fournisseur3
4 | fournisseur4
je sais , cette requête n'a pas de sens !
mais quand méme , j'ai pas convaincu par le résultat d'exécution:
numf | nomf
1 | fournisseur1
2 | fournisseur2
3 | fournisseur3
4 | fournisseur4
j'ai attendu un résultat comme ceci:
numf | nomf
1 | fournisseur1
2 | fournisseur2
est-ce-que c'est juste ou pas ???
To Be Or Not To Be , Marwen
fournisseur(numf,nomf)
numf | nomf
1 | fournisseur1
2 | fournisseur2
3 | fournisseur3
4 | fournisseur4
select * from fournisseur where exists (select * from fournisseur where numf<3);
je sais , cette requête n'a pas de sens !
mais quand méme , j'ai pas convaincu par le résultat d'exécution:
numf | nomf
1 | fournisseur1
2 | fournisseur2
3 | fournisseur3
4 | fournisseur4
j'ai attendu un résultat comme ceci:
numf | nomf
1 | fournisseur1
2 | fournisseur2
est-ce-que c'est juste ou pas ???
To Be Or Not To Be , Marwen
A voir également:
- 1- Aide Requête SQL
- Logiciel sql - Télécharger - Bases de données
- Sql lister les tables ✓ - Forum Programmation
- Requête bloquée par le pare-feu applicatif claranet webfence ✓ - Forum Réseaux sociaux
- Jointure sql ✓ - Forum MySQL
- Erreur lors de l'envoi de la requête facebook - Forum Facebook
1 réponse
Salut,
Tu as tort et la machine a raison (c'est quasiment toujours le cas).
D'abord la requête effectivement n'a pas de sens. Et c'est souvent pourquoi faire une démonstration avec une requête tordue n'est pas heureux.
WHERE EXISTS retourne VRAI quand la sous-requête ramène au moins une ligne. Dans ton cas la sous requête ramène 2 lignes donc la réponse est VRAI pour chaque enregistrement de la requête principale ;-))
WHERE EXISTS s'utilise normalement avec au moins 2 tables et un lien entre les 2 tables : les clients ayant au moins une commande :
select * from client
where exists (select * from commande where commande.idclient = client.idclient)
L'utilisation de cette fonction dans ton select tordu devrait donc être :
select * from fournisseur A
where exists
(select * from fournisseur B where B.numf<3 and A.numf = B.numf);
cdlt
Un étranger, c'est un ami qu'on n'a pas encore rencontré.
Tu as tort et la machine a raison (c'est quasiment toujours le cas).
D'abord la requête effectivement n'a pas de sens. Et c'est souvent pourquoi faire une démonstration avec une requête tordue n'est pas heureux.
WHERE EXISTS retourne VRAI quand la sous-requête ramène au moins une ligne. Dans ton cas la sous requête ramène 2 lignes donc la réponse est VRAI pour chaque enregistrement de la requête principale ;-))
WHERE EXISTS s'utilise normalement avec au moins 2 tables et un lien entre les 2 tables : les clients ayant au moins une commande :
select * from client
where exists (select * from commande where commande.idclient = client.idclient)
L'utilisation de cette fonction dans ton select tordu devrait donc être :
select * from fournisseur A
where exists
(select * from fournisseur B where B.numf<3 and A.numf = B.numf);
cdlt
Un étranger, c'est un ami qu'on n'a pas encore rencontré.
je sais ma requête n'a pas de sens (c'est just pour comprendre la clause EXISTS)
enfin je vais pas mettre mon sujet résolu, je vais pas rater l'occasion ! j'ai d'autre questions très probable , merci :)