问题描述
- sql问题急急急,来大神解决
-
SQL server求一行中数据的最小值,表的列数不固定,注意是一行不是一列,能只用函数解决是最好
解决方案
那你把一行数据读取出来放在某个容器里,然后比较大小,最后取出最小的不就行了。
解决方案二:
测试表为book1;
测试数据如下:
使用SQL语句如下:
UPDATE A SET
lv = B.x.value('min(//row/*)','int')
FROM [master].[dbo].[book1] AS A
CROSS APPLY (SELECT x = (SELECT A.* FOR XML PATH('row'),TYPE)) AS B;
运行结果如下:
解决方案三:
麻烦点你要不要试试case when函数
case
when lv1<=lv2&&lv1<=lv3& then lv1
when lv2<=lv1&&lv2<=lv3& then lv2
when lv3<=lv2&&lv3<=lv1& then lv3
end lv
解决方案四:
比较大小,最后取出最小的不就行了。
时间: 2024-09-11 18:21:15