如何使用IN()子句通过多个父ID获取所有子代

时间:2019-05-16 12:10:21

标签: mysql

我正在尝试使用IN子句按其父ID(多个)获取所有子记录,但仅返回子项属于IN子句中传递的第一个父ID。

这是我对MySQL数据库的查询

SELECT column1 AS c1, column2 as c2 from table where parent_id IN(1,2,3)

上面的查询返回的孩子属于父ID 1,但是我想让所有孩子都属于父ID 1,2和3。我的查询出了什么问题?

1 个答案:

答案 0 :(得分:1)

我想,您期待的是那个孩子,它拥有所有Parent_id的1、2和3。

以下查询将有所帮助:

SELECT ColumnName
FROM TableName
WHERE Parent_id IN (1, 2, 3)
GROUP BY ColumnName
HAVING COUNT(Parent_id) = 3