2015-05-29 13 views
0

我正在尋找一種方法來模擬「最大」,如在Apache Derby中的各種數據庫(如H2DB(http://www.h2database.com/html/functions.html#greatest)和Oracle)中實現的。指針表示讚賞。等效於Apache Derby的SQL「最大」函數?

編輯:我只需要兩個值,以便我可以根據以前的值有條件地更新列。

+1

編寫自己的功能可能是做到這一點的最好辦法。對於只有兩個或三個值,您可以使用'CASE'語句脫機 –

+0

@a_horse_with_no_name - 指出我正確的方向:「set X = CASE when X> FOO THEN X ELSE FOO END」似乎只是做了我需要;你想把你的評論變成答案嗎? –

回答

0

如何使用子查詢union all並從中選擇max
使用Oracle語法...

SELECT MAX(p) AS "greatest" 
    FROM (SELECT '1' AS p 
      FROM dual 
     UNION ALL 
     SELECT '2' 
      FROM dual 
     UNION ALL 
     SELECT '3' FROM dual)