sqlserver 中表行的操作

博客围绕SQL Server展开,介绍了按行取表中两个或三个字段的最小值、最大值、平均值等操作的SQL语句,还给出列中平均值与另一列求和的语句。同时指出不能用values构成select结果表,但可用union构建,并给出相应示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


-- 按行取表两个字段的最小值(最大值、平均值等等如法炮制)。
select *,(select MIN(f) from (values (F0001),(F0002)) as ss(f)) from T00001

-- 按行取表三个字段的最小值(最大值、平均值等等如法炮制)。
select *,(select MIN(f) from (values (F0001),(F0002),(F0003)) as ss(f)) from T00001

-- 列F0001,F0002中的平均值与F0003的和:
select *,(select AVG(f) from (values (F0001),(F0002)) as ss(f))+F0003 from T00001

 

--- 2019-03-18
--- 不能用values来构成select结果表,但可以用union来构建

select * from T00001


select MIN(f) from (values (21),(22)) as ss(f)
select MIN(f) from (values ('TC0002'),('TC0003')) as ss(f)

select MIN(f) from (values (21),(select COUNT(*) from t00001)) as ss(f)        -- CANNOT


select MIN(f) from (select (21) as ff union (select COUNT(*) from t00001)) as ss(f)        -- OK

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值