gpt4 book ai didi

mysql - 能否在 MySQL SELECT 语句中的多行中多次返回某列的最大值?

转载 作者:行者123 更新时间:2023-11-29 19:57:10 25 4
gpt4 key购买 nike

当我运行以下语句时:

从模板中选择 * 按模板 ID 排序

我得到以下信息:

+---------+-----------+-------------------+
| Template| Name | NumberOfColumns |
+---------+-----------+-------------------+
| 1 | blue | 1 |
| 2 | red | 2 |
| 3 | green | 4 |
+---------+-----------+-------------------+

当我执行以下操作时:

从模板中选择 *, max(NumberOfContentBlocks);

我得到以下信息:

+---------+-----------+-------------------+
| Template| Name | NumberOfColumns |
+---------+-----------+-------------------+
| 1 | blue | 4 |
+---------+-----------+-------------------+

是否有一个 SELECT 语句将返回以下内容?:

+---------+-----------+-------------------+
| Template| Name | NumberOfColumns |
+---------+-----------+-------------------+
| 1 | blue | 4 |
| 2 | red | 4 |
| 3 | green | 4 |
+---------+-----------+-------------------+

最佳答案

您可以将标量子查询放入选择列表中:

SELECT Template, Name, 
(SELECT MAX(NumberOfColumns) FROM templates) AS NumberOfColumns
FROM templates ORDER BY templateID;

标量意味着只要子查询保证返回一行一列,就可以放入标量上下文(例如选择列表的一列)。

关于mysql - 能否在 MySQL SELECT 语句中的多行中多次返回某列的最大值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40645669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com