1.【NOT】 Between A and B
当A<=n<=B时,返回true。
select * from TABLE_A where n between A and B;
2.【NOT】 Exists
当TABLE_A.ID在TABLE_B.ID中存在时,返回true。
select * from TABLE_A where exists(select 1 from TABLE_B where TABLE_A.ID=TABLE_B.ID);
3.ABS函数
返回n的绝对值。
select abs(n) from dual;
4.CEIL函数,FLOOR函数
ceil:天花板,向上取整,即返回大于或等于n的数值。
floor:地板,向下取整,返回小于或等于n的数值。
select ceil(-5.25),ceil(5.25) from dual;
结果:-5,6。
select floor(-5.25),floor(5.25) from dual;
结果:-6,5。
5.WM_CONCAT函数
常用于行数据合并,返回大对象数据类型CLOB,也可以通过TO_CHAR()转换,中间为逗号隔开。
select wm_concat(name) from sys_student where name like '季%';
但是此函数无法排序,需配合Partition分区分组,再使用Order by排序,
SELECT LOT.LOT_NO,
TO_CHAR(wm_concat(SERIAL_NUMBER)
over(partition by LOT_NO order by SERIAL_NUMBER)) SN
FROM G_PALLET_LOT LOT, G_SN_STATUS SN
WHERE LOT.PALLET_NO = SN.PALLET_NO
AND LOT.PALLET_NO = '2K31D5814115';
再嵌套一层Select From,取Max(SN)即可。
SELECT COUNT(*) QTY, LOT_NO, MAX(TO_CHAR(SN)) SN
FROM (SELECT LOT.LOT_NO,
TO_CHAR(wm_concat(SERIAL_NUMBER) over(partition by LOT_NO order by SERIAL_NUMBER