2

我需要在 MS Access 中进行。我有两张桌子: A {id, name, FK to B} B {id, name, limit}

现在我需要创建一个查询,它会给我 A 小于其限制的 B:

SELECT * FROM B WHERE B.limit <
   (SELECT COUNT(A.id) FROM A WHERE A.[FK to B] = B.id)

我不知道如何在 MS Access 中使查询变得如此简单。

4

1 回答 1

2

也许你可以用一个OUTER JOIN和子查询来做到这一点:

SELECT B.*
FROM B 
    LEFT JOIN (
        SELECT Count(*) cnt, BID
        FROM A
        GROUP BY BID
    ) A ON B.Id = A.BID
WHERE B.limit < NZ(A.cnt,0)
于 2013-06-04T16:51:38.190 回答