I have 2 tables. For simplicity, first table
Parent contains only
name. Other table
There are going to be many parent rows with the same name. They will have different childrens, so I want to be able to select a parent row only if it has childs from the list I provide.
Let's say I want a Parent with name 'test' only if it has Childs with id (223, 224, 225).
So far I achieved this with following query:
SELECT p.*, GROUP_CONCAT(c.id) as childs FROM `parent` p INNER JOIN `child` c ON p.id = c.parent_id WHERE p.name = 'test' GROUP BY p.name HAVING childs = '223,224,225' ORDER BY c.id
However I think it's not a good solution if it uses id concatenation