我有一张这样的桌子:
books(id, name, category)
book_pages(id, book_id)
我想获取与book_page
相关联的图书数量。(可能有没有书页的图书)。
我的第一个本能是,但是它返回很多行。
SELECT count(*) as count_table
FROM books b
GROUP BY b.id
HAVING ( (SELECT count(*) FROM book_pages bp WHERE bp.book_id = b.id) > 0 )
抱歉,我确定它在Google的某个地方,但不知道在哪里找。
答案 0 :(得分:1)
我只会使用exists
:
select count(*)
from books b
where exists (select 1 from book_pages bp where bp.book_id = b.id);