Sql 如何列出正在计算的值?
我使用聚合函数来计算最常出现的唯一值(假设为5)。现在,我想列出列中计算的这些唯一值—正在努力解决如何做到这一点。我能做到吗?我正在使用PostgreSQLSql 如何列出正在计算的值?,sql,postgresql,Sql,Postgresql,我使用聚合函数来计算最常出现的唯一值(假设为5)。现在,我想列出列中计算的这些唯一值—正在努力解决如何做到这一点。我能做到吗?我正在使用PostgreSQL SELECT IDs, COUNT(DISTINCT people) AS num_people FROM class GROUP BY IDs ORDER BY COUNT(DISTINCT people) desc LIMIT 1 当前样本结果: ------------------------------------- |
SELECT IDs,
COUNT(DISTINCT people) AS num_people
FROM class
GROUP BY IDs
ORDER BY COUNT(DISTINCT people) desc
LIMIT 1
当前样本结果:
-------------------------------------
| **IDs** | **num_people** |
-------------------------------------
| Aabbcc | 5 |
-------------------------------------
我希望这个结果和新的列在一起。(它也可以是一个单独的行-它
不必全部列在一行中,但这将是理想的)
您可以使用聚合函数
ARRAY\u AGG
或STRING\u AGG
:
SELECT IDs,
COUNT(DISTINCT people) AS num_people,
STRING_AGG(DISTINCT people, ', ') AS people_listed
FROM class
GROUP BY IDs
ORDER BY COUNT(DISTINCT people) desc
LIMIT 1
您可以使用聚合函数
ARRAY\u AGG
或STRING\u AGG
:
SELECT IDs,
COUNT(DISTINCT people) AS num_people,
STRING_AGG(DISTINCT people, ', ') AS people_listed
FROM class
GROUP BY IDs
ORDER BY COUNT(DISTINCT people) desc
LIMIT 1
在表格格式中提供一些示例数据和预期输出添加了预期输出和当前结果。还简化了问题。在表格式中提供一些示例数据和预期输出添加了预期输出和当前结果。也简化了问题。正是我在寻找克莱门斯!非常感谢。正是我要找的克莱门斯!非常感谢。