假设我有一个states
如下表:
create table states (id int4 unique not null, state int4 not null);
我想获取状态为 1 的表中的行数,以及状态为 2 的表中的行数。在两个单独的查询中执行此操作很简单:
select count(*) from states where state = 1;
select count(*) from states where state = 2;
但是将整个表遍历两次似乎很愚蠢。有人能想出一些巧妙的技巧,让我在单个语句中获得相同的信息并且只通过表格一次吗?