首页 >数据库 >mysql教程 >如何在 SQL Server 中查找多个列的最小值?

如何在 SQL Server 中查找多个列的最小值?

Mary-Kate Olsen
Mary-Kate Olsen原创
2025-01-10 09:34:40648浏览

How to Find the Minimum Value Across Multiple Columns in SQL Server?

在 SQL Server 中从多个列中选择最小值

给定一个表,其中包含几列数值,一个常见的任务是为每一行查找最小值,表示这些列中的最小值。

三列示例

考虑下表:

ID Col1 Col2 Col3
1 3 34 76
2 32 976 24
3 7 235 3
4 245 1 792

我们想要创建一个新列“TheMin”,其中包含每一行的最小值。

Case/When 语句

实现此目标的一种有效方法是使用 Case/When 语句,如下所示:

<code class="language-sql">SELECT Id,
       CASE 
           WHEN Col1 < Col2 AND Col1 < Col3 THEN Col1
           WHEN Col2 < Col1 AND Col2 < Col3 THEN Col2
           ELSE Col3
       END AS TheMin
FROM YourTable;</code>

此语句评估每一行:

  1. 如果 Col1 小于 Col2 和 Col3,则将 Col1 分配给 TheMin。
  2. 如果 Col2 小于 Col1 和 Col3,则将 Col2 分配给 TheMin。
  3. 否则,将 Col3 分配给 TheMin。

结果

输出将是一个包含新增的“TheMin”列的表,其中包含每一行的最小值:

ID Col1 Col2 Col3 TheMin
1 3 34 76 3
2 32 976 24 24
3 7 235 3 3
4 245 1 792 1

以上是如何在 SQL Server 中查找多个列的最小值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn