使用以下sql语句,我可以获得给定列的所有唯一值及其计数:
select column, count(column) as count from table group by column order by count desc;
我将如何获得带有计数的所有唯一值对。例如,如果我有一个包含列first_name和last_name的表,则可能会找到类似以下内容的结果:
first_name | last_name | count John | Smith | 42 John | Johnson | 39 David | Smith | 37
first_name | last_name | count
John | Smith | 42
John | Johnson | 39
David | Smith | 37
等等…
我可以在基本SQL中执行此操作吗?我通常使用MySQL,但是我想您想出的任何解决方案都可以翻译成任何数据库。
您几乎正确无误…您只需添加一个附加GROUP BY列,如下所示:
GROUP BY
SELECT [first_name], [last_name], COUNT(*) AS [Count] FROM [Table] GROUP BY [first_name], [last_name] ORDER BY [Count] DESC;