我一直在尋找一個相當於Oracle的LEAST函數。相當於Oracle最小的SQL Server?
我希望能夠實現一個用戶定義的函數,它可以執行大約10次相當複雜的計算,並從每個計算中獲取最小值。
我會做的甲骨文是:
SELECT LEAST
(
select expression1 from dual,
select expression2 from dual,
select expression3 from dual
) from dual
更多關於甲骨文至少可以看看http://www.techonthenet.com/oracle/functions/least.php。
如果表達式返回10,表達式2返回5,和表達式3 reeturned 30,整個表達式將返回5
因爲這可能是約10-20計算,當語法是會得到快速笨拙的CASE。
雖然如果我們將其分解得更多,代碼將更具可讀性,但我認爲在一個數據庫查詢中執行代碼會更有效。請讓我知道我在這一點上不正確,請!
也就是說,一個包含20個簡單查詢的存儲過程比存儲過程慢得多,而一個查詢在一個查詢中引用了大量表。
可能值得看看http://dba.stackexchange.com/questions/21542/what-is-the-most-efficient-way-to-get-the-minimum-of-multiple-columns-on- sql-ser - 它可以處理GREATEST和LEAST,但概念應該是等價的。 – 2012-08-13 13:59:58
看看這裏的幾個解決方案:http://stackoverflow.com/questions/124417/is-there-a-max-function-in-sql-server-that-takes-two-values-like-math-max -in-ne – Vadzim 2016-01-22 12:46:34