Fotoğraf ve photograph_tags: İki tablo var. Photograph_tags (Fotoğraflarda id) photograph_id adında bir sütun içerir. Bir fotoğraf için birçok etiket olabilir. Çocuk, dere ve su: Ben üç etiketler ile ilgili bir fotoğraf satır var. Ancak, aşağıdaki sorguyu çalıştıran 0 satır döndürür
SELECT p.*
FROM photographs p, photograph_tags c
WHERE c.photograph_id = p.id
AND (c.value IN ('dog', 'water', 'stream'))
GROUP BY p.id
HAVING COUNT( p.id )=3
Bu sorgu ile yanlış bir şey mi?
My tables look like so
-----------------------
photographs
-----------------------
id | title | location
------------------------
7 | asdf | c:\...
-----------------------
photograph_tags
-----------------------
id | photograph_id | value
1 | 7 | dog
2 | 7 | water
3 | 7 | stream
4 | 7 | mountains
I want to pull all photograph rows that relate to at least all three of the searched tags