如果 count 与记录 count 匹配则返回结果

问题描述 投票:0回答:1

我有 2 个 SQL Server 表,可以说称为子表和父表,其中一个父表对应多个子表。我在父表中有一个名为 ChildrenCount 的字段,并且希望有一个查询,仅当子表中的记录数与父表中的 ChildrenCount 匹配时才会连接并返回结果。这在 SQL 中可行还是需要存储过程?

sql sql-server
1个回答
0
投票

您可以将连接与聚合结合使用:

SELECT p.id
FROM parent p
INNER JOIN child c
    ON c.parent_id = p.id
GROUP BY p.id, p.c_cnt
HAVING p.c_cnt = COUNT(*);
© www.soinside.com 2019 - 2024. All rights reserved.