Donc, je souhaite appliquer une condition WHERE à un champ affecté par une clause COUNT() AS. Ma requête ressemble actuellement à ceci:SQL WHEREing sur une table différente COUNT
SELECT new_tags.tag_id
, new_tags.tag_name
, new_tags.tag_description
, COUNT(DISTINCT new_tags_entries.entry_id) AS entry_count
FROM (new_tags)
JOIN new_tags_entries ON new_tags_entries.tag_id = new_tags.tag_id
WHERE `new_tags`.`tag_name` LIKE '%w'
AND `entry_count` < '1'
GROUP BY new_tags.tag_id ORDER BY tag_name ASC
Le bit qui est défaillant est le ENTRY_COUNT dans la clause WHERE - il ne sait pas ce que la colonne est ENTRY_COUNT. Ma table ressemble à ceci:
new_tags {
tag_id INT
tag_name VARCHAR
}
new_tags_entries {
tag_id INT
entry_id INT
}
Je veux filtrer les résultats par le nombre de entry_ids distincts new_tags_entries qui se rapportent à l'ID d'étiquette.
Avez-vous du sens?
Merci d'avance.
Ne peut pas empêcher de remarquer 'ENTRY_COUNT < « 1''. Ne citez pas le '1' - vous n'essayez pas de voir si cela équivaut à une chaîne avec le contenu de''' que vous êtes en train de découvrir s'il y a moins d'une occurrence. –