计算 SQL 中每个代码的列中不同变量的数量

Count the number of distinct variables in a column for each Code in SQL

我正在尝试 return 红移中每个代码的 Y 的 N 和 R 的数量 SQL。 Table:

Code  Allowed?
 A       Y
 A       Y
 A       N
 A       Y
 A       R
 A       Y
 A       N
 A       R
 B       Y
 B       N
 B       Y

期望的输出:

Code Count_Y  Count_N  Count_R
 A      4        2        2
 B      2        1        0

您可以使用条件聚合:

select code, sum( (allowed = 'Y')::int ) as num_y,
       sum( (allowed = 'N')::int ) as num_n,
       sum( (allowed = 'R')::int ) as num_r
from t
group by code;