如何使用单个 SQL 查询查找每列的最大值

Posted

技术标签:

【中文标题】如何使用单个 SQL 查询查找每列的最大值【英文标题】:How to find the max values of each columns using a single SQL query 【发布时间】:2021-12-17 03:55:29 【问题描述】:

我有一张表,我想只使用一个查询来获取 col1、col2、col3 的所有最大值。我正在使用 sqlite 和 flask-sqlalchemy。

    | id | col1 |col2 |col3
    | -------- | -------------- |-------------- |--------------|
    | 1        | 1              | 88            |26            |
    | 2        | 2              | 17            |30            |
    | 3        | 5              | 9             |75            |
    | 4        | 93             | 2             |53            |

我试过了

SELECT MAX(col1, col2, col3) FROM table

但后来我得到 [(88,), (30,), (75,), (93,)]

我希望输出是

[(93,), (88,), (75,)]

我该怎么做?

【问题讨论】:

【参考方案1】:

我想你想在这里对MAX 进行三个单独的调用:

SELECT MAX(col1), MAX(col2), MAX(col3)
FROM yourTable;

【讨论】:

谢谢,这就是我要找的。​​span>

以上是关于如何使用单个 SQL 查询查找每列的最大值的主要内容,如果未能解决你的问题,请参考以下文章

SQL - 每列的 where 条件

如何利用SQL语句查看某一个表全部列或单个列的属性?

如何获得每列的最大值?

如何在 HTML 表格中显示带有分隔列的 SQL 查询结果

PostgreSQL - 如何在单个查询中获取列的最小值和最大值以及与它们关联的行?

Python:如何获取按 id 分组的每列的 n 个最大值的平均值