关闭

简单的最大最小问题:)

标签: inserttablesqlgo
293人阅读 评论(0) 收藏 举报
分类:

例表tb:
id  price    netprice
1   8.00      20.00
2   10.00     5.00
3   0.00      3.00    
我想要查出price与netprice之间大的列
比如查出如下数据:
id  newprice
1    20.00
2    10.00
3    3.00
sql语句要怎么写?

Create Table tb
(id Int,
 price Numeric(10, 2),
 netprice Numeric(10, 2))

Insert tb Select 1,   8.00,      20.00
Union All Select 2,   10.00,     5.00
Union All Select 3,   0.00,      3.00    
GO

select id,(case when price>netprice then price else netprice end)as aa
from tb

select id,max(aa)
from
(select id,price as aa from tb
 union all
 select id,netprice as aa from tb
)t group by id
--result:
1 20.00 
2 10.00 
3 3.00  

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:9437次
    • 积分:162
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:11篇
    • 译文:0篇
    • 评论:3条
    文章分类
    文章存档
    最新评论