Oracle中取某幾個數的最大值最小值


Oracle中取某幾個數的最大值最小值

 

一直有誤區認為Oracle或者說關系型數據庫中沒有取某些數據中最大值最小值的函數,其實是存在的 分別為:
greatest( expr1, expr2, ... expr_n )
least( expr1, expr2, ... expr_n )

如圖:
在這里插入圖片描述
上述兩個函數都使用 N 個參數,並分別返回最大值和最小值。 另需注意參數可能具有混合數據類型。
具體規則如下:

    1. 如果任何參數為null,則兩個函數都將立即返回 null ,而不進行任何比較。
    2. 如果為int或real 上下文中使用函數,或者所有參數都是整數值或real值,那么他們將分別為int和real來比較。
    3. 如果參數由數字和字符串組成,則函數將它們作成數字進行比較。
    4. 如果至少一個參數是非二進制(字符)字符串,則函數將將參數作為非二進制字符串進行比較。
    5. 在所有其他情況下,函數將參數作為二進制字符串進行比較


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM