加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SqlServer取出多个字段列中的最大值和最小值

发布时间:2020-12-12 12:57:14 所属栏目:MsSql教程 来源:网络整理
导读:现有表table1,四个int型 字段 F1,F2,F3,F4;现要查询得到四列中的最大值,并只需要返回最大值 方法一: view source print ? 1. select? case ? when F12F34 then F12? else ? F34 end as MaxNum from 2. (select? when F1F2 then F1? F2 end as F12, 3. when

现有表table1,四个int型 字段 F1,F2,F3,F4;现要查询得到四列中的最大值,并只需要返回最大值

方法一:

view source print ? 1. select?case?when F12>F34 then F12?else?F34 end as MaxNum from 2. (select?when F1>F2 then F1?F2 end as F12, 3. when F3>F4 then F3?F4 end as F34 from table1) as t1 order by MaxNum desc

效果如下:


方法二:

01. SELECT TOP?1?* FROM ( 02. SELECT F1 AS MaxNum,'F1'?AS ColumnName FROM TABLE1 03. UNION 04. SELECT F2 AS MaxNum,宋体">'F2'?05. 06. SELECT F3 AS MaxNum,宋体">'F3'?07. 08. SELECT F4 AS MaxNum,宋体">'F4'?AS ColumnName FROM TABLE1) AS T 09. ORDER BY T.MaxNum DESC


top 2 为第2大的值, top 3 为 第3大的值?

效果如下:


小注:有4列 数据,这里 三个 union 连接的 四个 select 语句,每个查一列,最后四列数据变成一行,然后再查,就好查了。

对于方法二的知识补充:SQL UNION 和 UNION ALL 操作符

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读