我有一个值为1,1,2,1 ...的列,我希望得到1和2的频率,我做到了
SELECT count(column) FROM table WHERE column = 1; SELECT count(column) FROM table WHERE column = 2;
但是,我能用更直接的方式获得频率吗?
izj3ouym1#
使用聚合函数
Select column, count(*) From table Group By column
对于列中的每个非重复值,这将返回一个包含计数的行
enyaitl32#
每个值占一行:
select column 'value', count (column) 'Frequency' from table group by column
如果只有2个值,则在一行中给出两个结果
select sum(case when column=1 then 1 else 0 end) as '1 Frequency', sum(case when column=2 then 1 else 0 end) as '2 Frequency' from table
nkoocmlb3#
你可以试试不同的功能,像这样
SELECT count( distinct column) FROM table;
3条答案
按热度按时间izj3ouym1#
使用聚合函数
对于列中的每个非重复值,这将返回一个包含计数的行
enyaitl32#
每个值占一行:
如果只有2个值,则在一行中给出两个结果
nkoocmlb3#
你可以试试不同的功能,像这样