Oracle排雷-运算中的null
1.四则运算中的NULL
Oracle中与null进行四则运算的结果都为null
最近在使用Oracle编程时遇到一个问题,
当进行四则运算时 如果其中一个值为null,则计算结果都为null
创建测试表
DROP TABLE TESTED.NULL_TEST;
CREATE TABLE TESTED.NULL_TEST(
COLUMN1 VARCHAR2(100 CHAR),
COLUMN2 VARCHAR2(100 CHAR),
COLUMN3 NUMBER,
COLUMN4 NUMBER,
COLUMN5 INTEGER,
COLUMN6 INTEGER
);
插入测试数据
SET DEFINE OFF;
Insert into TESTED.NULL_TEST
(COLUMN1,COLUMN2, COLUMN3,COLUMN4,COLUMN5,COLUMN6)
Values
('100','', 1000,'', 123,'');
COMMIT;
查询与null值进行四则运算的结果
SELECT NT.COLUMN1+NT.COLUMN2 AS A1,NT.COLUMN1-NT.COLUMN2 AS A2,NT.COLUMN1*NT.COLUMN2 AS A3,NT.COLUMN1/NT.COLUMN2 AS A4,
NT.COLUMN3+NT.COL