MySql selection sans doublon (select distinct)

papa
WRInaute discret
WRInaute discret
 
Messages: 54
Inscription: 21 Sep 2004

MySql selection sans doublon (select distinct)

Message le Jeu Sep 18, 2008 11:37

Bonjour,

j'ai une table avec
LIEUX PAYS MER
Marseille FR 1
Paris FR 0
Nantes FR 0
Bruxelles BE 0
Amsterdam HO 1

je veux recupérer mes codes pays en fonction du critere mer

Mais si je fais :
SELECT 'PAYS' FROM ma_table WHERE 'MER'='0'
J'obtiens 3 enregistrements dont 2 FR
si je fais
SELECT 'PAYS' FROM ma_table WHERE 'MER'='0' GROUP BY 'paycode'
je n'obtiens aucun enregistrement
et si je fais
SELECT DISTINCT 'PAYS' FROM ma_table WHERE 'MER'='0'

je n'obtiens encore aucun enregistrement

Quelle est donc la bonne formule SVP ???


seebz
WRInaute impliqué
WRInaute impliqué
 
Messages: 808
Inscription: 15 Avr 2007

Message le Jeu Sep 18, 2008 11:40

faut pas un "group by" avec distinct ?

t'as vérifié si ta requête ne provoque pas d'erreur ?

papa
WRInaute discret
WRInaute discret
 
Messages: 54
Inscription: 21 Sep 2004

Message le Jeu Sep 18, 2008 12:39

non pas d'erreur,
en fait je cherche la requete directement avec le boitier sql de mon phpmyadmin
mais
soit j'ai tous les enregistrements (2500 pour 20 code de pays differents)
soit aucun
quelle serait la requete pour en obtenir qu'un seul code pays selon la valeur du champs mer (qui me garderait la Belgique par exemple et ne retiendrait pas luxembourg)


Bool
WRInaute passionné
WRInaute passionné
 
Messages: 1290
Inscription: 26 Fév 2004

Message le Jeu Sep 18, 2008 12:41

Pourquoi mets tu des quotes partout ? :S
Code: Tout sélectionner
SELECT DISTINCT PAYS FROM ma_table WHERE MER= 0


je n'obtiens aucun enregistrement

Si tu affichais les erreurs MySQL et PHP, ça t'aiderait aussi...


seebz: faut pas un "group by" avec distinct ?

non, c'est plutôt l'un ou l'autre.


5_legs
WRInaute passionné
WRInaute passionné
 
Messages: 2072
Inscription: 30 Avr 2006

Message le Jeu Sep 18, 2008 12:43

Tu es certain du nom de tes champs ?

Car dans ton exemple : SELECT 'PAYS' FROM ma_table WHERE 'MER'='0' GROUP BY 'paycode'

Tu parles de "paycode"

normalement SELECT DISTINCT PAYS FROM ma_table WHERE MER= 0 est correct

citizenofwakana
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 1
Inscription: 7 Déc 2007

Message le Jeu Sep 18, 2008 12:43

Bonjour, en fait je comprends pas trop pourquoi tu as mis des quotes autour de MER (avec les quotes, ca devrait toujours etre faux et te renvoyer aucun résultats)


5_legs
WRInaute passionné
WRInaute passionné
 
Messages: 2072
Inscription: 30 Avr 2006

Message le Jeu Sep 18, 2008 12:44

Les quotes c'est parce qu'il construit la requête avec phpMyadmin en sélectionnant les champs


Bool
WRInaute passionné
WRInaute passionné
 
Messages: 1290
Inscription: 26 Fév 2004

Message le Jeu Sep 18, 2008 12:46

ce serait des "backquotes" alors : ` et non '

papa
WRInaute discret
WRInaute discret
 
Messages: 54
Inscription: 21 Sep 2004

Message le Jeu Sep 18, 2008 12:58

Eureka !

C'etait bien des ' en trop autour de ma valeur de champs MER =>
'MER'='0' retourne aucun champs (mais ne creer pas d'erreur)
MER =0 retourne ma selection

Merci à vous
à Bientôt


5_legs
WRInaute passionné
WRInaute passionné
 
Messages: 2072
Inscription: 30 Avr 2006

Message le Jeu Sep 18, 2008 12:58

Bool a écrit:ce serait des "backquotes" alors : ` et non '


Très juste !

papa
WRInaute discret
WRInaute discret
 
Messages: 54
Inscription: 21 Sep 2004

Message le Jeu Sep 18, 2008 13:41

druart a écrit:
Bool a écrit:ce serait des "backquotes" alors : ` et non '


Très juste !


oui mais je retape sans copier coller donc le backquote devient une apostrophe
CQFD :-)

hooka
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 14
Inscription: 21 Fév 2009

Re: MySql selection sans doublon (select distinct)

Message le Ven Fév 27, 2009 11:27

bonjout,
j ai un table qui contient plusieur colomne
je souhaite selectionner 2 colomne et je souhaite aussi que les ligne du colomne email ne se repete pas ( avec distinct )
si je valide cette requette
Code: Tout sélectionner
select distinct email from table
elle ne me permet pas d utiliser les donnee qui se trouve dans le colomne nom
merci d avance


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité