0
最低有沒有什麼快捷功能是等價的:SELECT最大/ 2個或多個字段
CASE
WHEN FieldA > FieldB
THEN FieldA
WHEN FieldA < FieldB
THEN FieldB
END
顯然,這個人是不是很難寫,但說你有更多的比較做出,即
CASE
WHEN FieldA > FieldB
AND FieldA > FieldC
AND FieldA > FieldD
THEN FieldA
WHEN FieldA < FieldB
AND FieldC < FieldB
AND FieldD < FieldB
THEN FieldB
...
END
它會變得非常麻煩。據我所知,UDF可以創建以處理這個問題,或者你可以這樣做:
SELECT MAX(Field) FROM
(
SELECT FieldA AS Field
FROM Table
UNION ALL
SELECT FieldB AS Field
FROM Table
UNION ALL
SELECT FieldC AS Field
FROM Table
UNION ALL
SELECT FieldD AS Field
FROM Table
)
,但有沒有在任何TSQL快捷方式嗎?出於好奇,其他DBMS語言是否有這樣的內置函數?
[獲取至少兩個值的SQL]的可能的複製(http://stackoverflow.com/questions/1947753 /在-sql-two-values-in-sql中取得最小值) – MrTux
您可以將所有文件插入@或#臨時表,然後選擇最大值或最小值。 –
@MrTux我在這個問題中提到了在這個線程中給出的答案,我只是想看看是否有更有效的方法,或者正如在下面的答案中提到的那樣,它可以被添加到TSQL中,特別是如果它存在於其他語言 –