2010-11-09 76 views
16

我要做到以下幾點:選擇最小的兩個日期

SELECT min(date_1, date_2) 
from dual; 

但由於分只需要一個參數,這將非常失敗。有另一種方法嗎?

回答

27
SELECT LEAST(date_1, date_2) FROM DUAL; 

甲骨文LEAST

+1

SSMS中是否存在「最少」等值? – ScottieB 2012-07-14 00:08:23

+0

SSMS2012:_'LEAST'不是公認的內置函數名稱._ – Airn5475 2013-09-25 15:04:28

+2

相反最大 – Pierre 2016-02-23 14:08:15

12

嘗試使用的CASE代替MIN比較兩個並返回較小值:

SELECT CASE WHEN date_1<date_2 THEN date_1 ELSE date_2 END FROM dual; 

來源:http://www.techonthenet.com/oracle/functions/case.php

+2

您可能還需要添加聚結除非你的日期欄不允許有空值,否則就是這些比較。 – 2010-11-09 20:28:23