Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/03/2008, 14h11   #1
Membre confirmé
 
Avatar de renaud26
 
Inscription : mars 2003
Messages : 1 043
Détails du profil
Informations personnelles :
Âge : 49
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : mars 2003
Messages : 1 043
Points : 285
Points : 285
Par défaut [SQL] Problème pour formuler une requête SQL

Bonjour à tous,

Je la croyais toute bête...mais c'est moi qui doit l'être parce que je patine dessus.

Soit une table "voitures"

id | nom
--------
1 | Peugeot
2 | Renault
3 | Citroen

Et une table "utilisateur_voiture"

id_util | id_voiture
-----------------
1 | 2
1 | 3
2 | 1
3 | 2

On voit dans cet exemple que l'utilisateur 1 a 2 voitures : une Renault et 1 citroen... ok. Comment je fais si je veux afficher la voiture que l'utilisateur 1 n'a pas, donc Peugeot ?????

Je séche...si quelqu'un peut me donner un coup de pouce, merci à lui.
renaud26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/03/2008, 14h22   #2
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
Code :
select id_voiture from utilisateur_voiture where id_voiture NOT IN (select id_voiture from utilisateur_voiture where id_util = 1)
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/03/2008, 14h40   #3
Membre confirmé
 
Avatar de renaud26
 
Inscription : mars 2003
Messages : 1 043
Détails du profil
Informations personnelles :
Âge : 49
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : mars 2003
Messages : 1 043
Points : 285
Points : 285
Merci ! même si ta requête n'est pas juste, le NOT IN m'a permis de trouver la soluce :

Code :
1
2
3
 
 
select id from voitures where id NOT IN (select id_voiture from utilisateur_voiture where id_util = 1)
Bonne fin de journée.
renaud26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/03/2008, 15h02   #4
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
En quoi ma requête est fausse???
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2008, 18h35   #5
Membre confirmé
 
Avatar de renaud26
 
Inscription : mars 2003
Messages : 1 043
Détails du profil
Informations personnelles :
Âge : 49
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : mars 2003
Messages : 1 043
Points : 285
Points : 285
Non, excuse moi: fausse n'est pas le mot juste. Disons qu'elle ne retourne pas la voiture de la table "voiture" mais l'id_util de la table utilisateurs. Non ?
Par contre, je capte pas un truc : ça fonctionne nickel en local mysql 4.1.9-max) mais pas sur le distant (mysql 4.0.21) et j'arrive pas à comprendre pourquoi. Version mysql trop ancienne ?
renaud26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h44.


 
 
 
 
Partenaires

Hébergement Web