如何使用 count() 关联子 select

How to use count() correlated sub select

我有这个 SQL 查询

SELECT table1.* 
  FROM table1 table1 
 WHERE table1.table2_id IN (SELECT table2.id 
                              FROM table2 
                             WHERE table2.locked = 0)

我得到了结果并且工作正常,但现在我想计算存在多少行。

我试过这样的事情:

SELECT table1.count(*) 
  FROM table1 table1 
 WHERE table1.table2_id IN (SELECT table2.id 
                              FROM table2 
                             WHERE table2.locked = 0)

但没有任何效果……

如何计算这种查询中的行数?

试试这个

SELECT COUNT(*)
FROM table1 table1
WHERE table1.`table2_id` IN (SELECT table2.id FROM table2 WHERE table2.locked = 0)

希望对您有所帮助! ..