我有一些SQL代码可以从DB返回一些数据
SELECT t1.id as id, title, description FROM table1 t1
JOIN table2 t2 ON t1.id = t2.t1_id
WHERE t2.t3_id IN( SELECT id FROM table3 WHERE parent_id IN ( SELECT id FROM table3 WHERE parent_id = 1)) GROUP BY t1.id
我在计算结果行数方面遇到了一些问题。我知道我必须写几乎相同的代码,但有COUNT但我有一个问题,我的代码不会返回我的行数。
答案 0 :(得分:0)
只需使用COUNT(*)
功能即可。此外,您的子查询可以转换为JOIN
(并且您的子子查询是多余的):
SELECT COUNT(*)
FROM table1 t1
JOIN table2 t2
ON t1.id = t2.t1_id
JOIN table3 t2
ON t3.id = t2.t3_id
WHERE t3.parent_id = 1