我有以下假设代码,它适用于获取site
的行数
SELECT COUNT(*) FROM (
SELECT site
FROM (SELECT...) x
LEFT JOIN foo.bars
ON foo.id = x.id
GROUP BY site
)
有没有其他方法可以在不使用最外层SELECT的情况下进行此计算?
答案 0 :(得分:1)
你可以用count(distinct)
:
SELECT COUNT(DISTINCT site)
FROM (SELECT...) x LEFT JOIN
foo.bars
ON foo.id = x.id;
唯一的区别是原始版本的NULL
值为site
。如果这很重要,那么可以轻松修改查询以将其考虑在内。