一、coalesce返回列表中第一個非空值sql
格式: coalesce(value1, value2, value3, ...)code
value列表必須是相同類型ast
select coalesce (1, null, 2 ) from dual ; -- 返回1 select coalesce ( null, 2, 1 ) from dual ; -- 返回2 select coalesce (t.empno, t.mgr ) from scott.emp t ; -- 效果相似 NVL( t.empno, t.mgr )
二、greatest 返回值列表中最大值
格式: greatest(value1, value2, value3, ...)class
value列表必須是相同類型,也能夠是一個表的同一行、不一樣列的值進行比較。
當value值列表中有一個爲null,則返回null值。test
select greatest (1, 3, 2 ) from dual ; -- 返回3 select greatest ( 'a', 'b', 'c' ) from dual ; -- 返回c select greatest (null, 'b', 'c' ) from dual ; -- 返回null select greatest (t.empno, t.mgr ) from scott.emp t ; -- 返回empno和mgr 較大值
三、least 返回值列表中最小值
格式: least(value1, value2, value3, ...)
含義: 返回value列表最小的值。
value列表必須是相同類型,也能夠是一個表的同一行、不一樣列的值進行比較。
當value值列表中有一個爲null,則返回null值。select
select least (1, 3, 2 ) from dual ; -- 返回1 select least ( 'a', 'b', 'c' ) from dual ; -- 返回a select least (null, 'b', 'c' ) from dual ; -- 返回null select least (t.empno, t.mgr ) from scott.emp t ; -- 返回empno和mgr 較小值