Bug de Select en SQL

Fermé
stef - Modifié par pijaku le 28/11/2013 à 08:49
 stef - 28 nov. 2013 à 15:27
bonjour,
j'aimerais avoir de l'aide pour ceci svp et si possible :
le select ci-dessous a toujours bien fonctionné :
select * from t_texte_perception where no_type_psycho=$no_type_psycho and sexe='$[/download/telecharger-34083694-sexe sexe]' and type_perception='negative' order by rand() desc limit 0,5" ; 

depuis une modification dans cette table, en ajoutant une colonne id et que la nouvelle clé primaire devienne : [id et sexe], j'obtiens une erreur car le select me retourne des énoncés féminin alors que le sexe est masculin.
avant cette modif, le contenu de la table était (et le select était parfait):
id 1 - homme - blabla
id 2 - femme - blablaf
id 3 - homme - blabla
id 4 - homme - blabla
id 5 - homme - blabla
id 6 - homme - blabla
la nouveau contenu de la table ressemble à ceci maintenant (2 rangées avec le même id mais la clé est sur 2 colonnes maintenant) :
id 1 - homme - blabla
id 1 - femme = blablaf
id 2 - homme - blabla
id 2 - femme = blablaf
id 3 - homme - blabla
id 3 - femme = blablaf
mon besoin d'aide :
comment corriger le select pour qu'il retourne les bonnes rangées selon le sexe, comme avant ??? car en ce moment, que le sexe soit homme ou femme, il ne retourne que les rangées Femme.
merci milles fois !!!

2 réponses

Utilisateur anonyme
28 nov. 2013 à 09:49
Bonjour

Peux-tu nous donner la requête que tu avais avant (celle qui donnait le premier résultat) et la nouvelle, celle qui donne le nouveau résultat ?
Et que signifie cette syntaxe
'$sexe'
? C'est une constante chaîne qui ne veut rien dire d'autre que "$sexe", ce n'est pas une variable php et ça ne peut pas valoir "homme" ni "femme".
Enfin, peux-tu me dire par quel miracle avec un ORDER BY rand() tu as un résultat classé par ordre d'id croissant ?
0
la requête est la même dans les 2 cas et c'est celle qui se retrouve dans mon 1er message. les valeurs $sexe est une variable dans fpdf.

la requête me retourne les bons résultats si je met des ID différents à toutes les rangées et elle me retourne les résultats femme si je met le même ID à 2 rangées, soit une Homme et l'autre Femme.

merci !
0