欢迎来到代码驿站!

MsSql

当前位置:首页 > 数据库 > MsSql

MSSQL 多字段根据范围求最大值实现方法

时间:2021-04-26 11:05:40|栏目:MsSql|点击:

-->Title:生成?y????
-->Author:wufeng4552
-->Date :2009-09-21 15:08:41

declare @T table([Col1] int,[Col2] int,[Col3] int,[Col4] int,[Col5] int,[Col6] int,[Col7] int)
Insert @T
select 1,10,20,30,40,50,60 union all
select 2,60,30,45,20,52,85 union all
select 3,87,56,65,41,14,21
--方法1
select [col1],
       max([col2])maxcol
from
 (select [col1],[col2] from @t
  union all
  select [col1],[col3] from @t
  union all
  select [col1],[col4] from @t
  union all
  select [col1],[col5] from @t
  union all
  select [col1],[col6] from @t
  union all
  select [col1],[col7] from @t
 )T
where [col2] between 20 and 60  --?l件限制
group by [col1]
/*
col1        maxcol
----------- -----------
1           60
2           60
3           56

(3 ???Y料列受到影?)

*/
--方法2
select [col1],
       (select max([col2])from
       (
        select [col2]
        union all select [col3]
        union all select [col4]
        union all select [col5]
        union all select [col6]
        union all select [col7]
       )T
       where [col2] between 20 and 60) as maxcol --指定查????
from @t
/*
(3 ???Y料列受到影?)
col1        maxcol
----------- -----------
1           60
2           60
3           56
*/

上一篇:错误22022 SQLServerAgent当前未运行的解决方法

栏    目:MsSql

下一篇:SQL截取字符串函数分享

本文标题:MSSQL 多字段根据范围求最大值实现方法

本文地址:http://www.codeinn.net/misctech/109363.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有