我有这两张桌子:
表:单位
UnitID | Title
1 Unit 1
2 Unit 2
3 Unit 3
表:件
PieceID | UnitID | Category
1 1 A
2 1 A
3 1 B
4 2 A
5 3 B
我需要做的是显示包含具有类别A的Piece行的总单位数,以及具有类别A的Piece表行的总数(不管unitid)。因此,使用上面的数据,结果将是2个单位,3个行。
我可以用两个陈述来做这个,但我想做一个。
比我更狡猾的人提出任何建议吗?
答案 0 :(得分:2)
尝试:
select count(distinct UnitID) total_units, count(*) total_rows
from Piece
where Cateory = 'A';
答案 1 :(得分:2)
过滤掉具有正确类别的碎片,然后明确计算单位:
select count(distinct UnitId) as Units, count(*) as Pieces
from Piece
where Category = 'A'