J'ai la tête dans mon truc depuis maintenant trop de temps, je pense que c'est une question super bête mais je n'arrive pas à me rappeler.
J'ai une requête SELECT du genre :
SELECT *
FROM `profiles` AS `Profile`
LEFT JOIN `profiles_skills` AS `ProfilesSkill`
ON (`ProfilesSkill`.`profile_id` = `Profile`.`id`)
; LEFT JOIN `skills` AS `FilterTag`
; ON (`FilterTag`.`id` = `ProfilesSkill`.`skill_id`)
WHERE `ProfilesSkill`.`skill_id` = 5
AND `ProfilesSkill`.`skill_id` = 7
J'ai deux problèmes :
- J'aimerais que les champs séléctionnés respectent les deux conditions (WHERE et AND) et pas récupérer ceux qui respecte l'une des deux, mais la ça me balance aussi les lignes qui respecte une des deux =_=
- Lorsque je de-commente les deux lignes commentés il ne me ramène plus aucun résultat.
Je pense que ma requête est mal faites, auquel cas merci beaucoup de m'aider parce que la je vois pas le bout xD
1/ Tu veux récupérer les profils qui ont les skills 5 et 7 alors ?? Parce que dans ton tableau, c'eest pas le même profil qui possède les 2 donc je comprend pas trop ton problème.
Le fait que le nombre de skills demandées puisse varier, c'est pas un problème justement.
Par contre, je pensais que JUSTEMENT, si tu demandais 2 skills, tu voulais UNIQUEMENT les profils qui ont bien ces deux skills, et pas une seule des 2... C'est ce qui est mis dans ton premier post en tout cas...
SELECT *
FROM `profiles` AS `Profile`
LEFT JOIN `profiles_skills` AS `ProfilesSkill`
ON (`ProfilesSkill`.`profile_id` = `Profile`.`id`)
LEFT JOIN `skills` AS `FilterTag`
ON (`FilterTag`.`id` = `ProfilesSkill`.`skill_id`)
WHERE `ProfilesSkill`.`skill_id` IN(5, 7)
GROUP BY `Profile`.`id`
HAVING COUNT(`ProfilesSkill`.`skill_id`) >= 2
Je ne me suis pas planté cette fois ? xD (Ça a l'air de fonctionner en tout cas)
Je viens de capter le GROUP BY -_- je viens de comprendre le problème enfaite
Autant pour moi
AND qui respecte les deux conditions
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Tutoriel complet MySQL !
Tutoriel complet MySQL !
Tutoriel complet MySQL !
Tutoriel complet MySQL !
Tutoriel complet MySQL !
Tutoriel complet MySQL !
Tutoriel complet MySQL !
Tutoriel complet MySQL !