NULL的问题
-- 查询结果为所有包含有"中国"字样的数据行
select * from t_project t where t.name like '%中国%';
-- 如果like的参数为空,则只能查询出所有name列不为空的数据行,name列值为null的数据将不会返回
select * from t_project t where t.name like '%%' ;
-- 查询时,如果需要在like的参数为空时,查询出所有数据,需要添加or条件
select * from t_project t where t.name like '%%' or t.name is null;
查询 0.123 得到 .123 的问题
-- 查询结果为: .123,.456
SELECT wm_concat(num) nums from(
SELECT 0.123 num FROM dual
UNION ALL
SELECT 0.456 num FROM dual
) ;
-- 可使用以下方法解决
SELECT wm_concat(num) nums1,wm_concat(REGEXP_REPLACE(num,'^\.','0.')) nums2 from(
SELECT 0.123 num FROM dual
UNION ALL
SELECT 0.456 num FROM dual
) ;