Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
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 08/11/2011, 15h46   #1
Membre à l'essai
 
Inscription : novembre 2009
Messages : 91
Détails du profil
Informations forums :
Inscription : novembre 2009
Messages : 91
Points : 20
Points : 20
Par défaut Requête simple ?

...ou pas ?

J'ai une table de ce type, liée aux tables variable et individu.
Code :
1
2
3
4
5
6
7
8
9
 
__ TABLE _________________________________________
---     id_var ----     id_ind ----     valeur -----------------
            1                    2                    petit
            2                    2                    rouge
            1                    3                    petit
            2                    3                    bleu
            1                    4                    moyen
            2                    4                    rouge
J'ai besoin de connaître les individus (id_ind) correspondant à plusieurs critères.
par exemple : taille "petit" et veste "rouge" : le 2 correspond, pas le 3 ni le 4.

Je sais, la structure de la table n'est pas orthodoxe. Mais pas eu le choix.

Une idée ?

Merci d'avance,

-----------
Edit : J'oubliais : voici ce que j'ai testé (évidemment sans succès)
Code :
1
2
3
4
SELECT DISTINCT id_ind 
FROM TABLE
WHERE  (id_var = '1' AND valeur = 'petit')
AND (id_var = '2' AND valeur = 'rouge')
Chello est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2011, 15h57   #2
Expert Confirmé
 
Homme
Inscription : mai 2002
Messages : 1 646
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mai 2002
Messages : 1 646
Points : 2 643
Points : 2 643
Bonjour,


lisez ceci : sqlpro.developpez.com/cours/sqlaz/ensembles/


Et ceci devrai répondre à votre besoin (en supposant que vosu n'avez aucun doublon, sinon il faudra transformer les count(*) en un count(distinct(id_var)) )
Code :
1
2
3
4
5
6
 
SELECT id_ind
FROM ma_table
WHERE (id_var = 1 AND valeur = 'petite') OR (id_var = 2 AND valeur = 'rouge')
GROUP BY id_ind
HAVING count(*) = 2
punkoff est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/11/2011, 17h33   #3
Membre à l'essai
 
Inscription : novembre 2009
Messages : 91
Détails du profil
Informations forums :
Inscription : novembre 2009
Messages : 91
Points : 20
Points : 20
Ça fonctionne !

Merci
Chello 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 14h26.


 
 
 
 
Partenaires

Hébergement Web