28,390
社区成员
发帖
与我相关
我的任务
分享
SELECT * FROM XXX ORDER BY ( case
when room1<=room2 and room1<=room3 and room1<=room4 then room1
when room2<=room1 and room2<=room3 and room2<=room4 then room2
when room3<=room1 and room3<=room2 and room3<=room4 then room3
when room4<=room1 and room4<=room2 and room4<=room3 then room4
)
SELECT * FROM XXX ORDER BY IIf(room1<=room2 and room1<=room3 and room1<=room4, room1, IIf(room2<=room1 and room2<=room3 and room2<=room4,room2,iif(room3<=room1 and room3<=room2 and room3<=room4,room3,room4)))
SELECT selname, ( case
when room1<=room2 and room1<=room3 and room1<=room4 then room1
when room2<=room1 and room2<=room3 and room2<=room4 then room2
when room3<=room1 and room3<=room2 and room3<=room4 then room3
when room4<=room1 and room4<=room2 and room4<=room3 then room4
) AS minvalue
FROM XXX ORDER BY minvalue
CREATE FUNCTION minvalue(@col1 int, @col2 int, @col3 int, @col4 int )
returns int
as
begin
declare @tablemin Table ( minval int )
insert into @tablemin (minval) values (@col1)
insert into @tablemin(minval) values (@col2)
insert into @tablemin (minval) values (@col3)
insert into @tablemin (minval) values (@col4)
return (select min(minval) from @tablemin where minval is not null)
End
SELECT selname, room1,room2,room3,room4,
dbo.minvalue(room1,room2,room3,room4) AS minvalue
FROM XXX
ORDER BY minvalue
CREATE FUNCTION minvalue(@col1 int, @col2 int, @col3 int, @col4 int )
returns int
as
begin
declare @tablemin Table ( minval int )
insert into @tablemin (minval) values (@col1)
insert into @tablemin(minval) values (@col2)
insert into @tablemin (minval) values (@col3)
insert into @tablemin (minval) values (@col3)
return (select min(minval) from @tablemin where minval is not null)
End
SELECT selname, room1,room2,room3,room4,
dbo.minvalue(room1,room2,room3,room4) AS minvalue
FROM XXX
ORDER BY minvalue
SELECT SELNAME, ROOM1, ROOM2, ROOM3, ROOM4 FROM [表] ORDER BY (room1+room2+room3+room4) ASC