一、oracle 非空查询
1、空值与空字符串不同,判断方法也不同
判断NULL用is null 或者 is not null。
判断空字符串,要用 =”或者 <>”。
2、用法说明
获取空值或非空值的数据:
获取字段field为空值的数据,语法:【select * from tableName where field is null】
获取字段field为非空值的数据,语法:【select * from tableName where field is not null】
获取空字符串或非空字符串的数据:
获取字段field为空字符串的数据,语法:【select * from tableName where field=' '】
获取字段field为非空字符串的数据,语法:【select * from tableName wherefield!=' '】
二、自动补'0'与截取
rpad是右补'0',lpad是左补'0'
rpad('需要补0的字段',位数,'0')
substr是截取substr('要截取的字段','截取的开始位置','截取的结束位置')
SELECT
SUBSTR(LPAD(CHAR_PILE_NO,3,'0'),2,3)
FROM
D5000.CAR_STRATEGY_INFO
三、日期格式化
To_DATE
To_CHAR
SELECT
TO_DATE(STRATEGY_RECEIVE_TIME,'yyyy-MM-dd'),
TO_CHAR(STRATEGY_RECEIVE_TIME,'yyyy-MM-dd')
FROM
D5000.CAR_STRATEGY_INFO
四、拼接
concat用于拼接;concat('需要拼接的字段','需要拼接的字段')
SELECT
CONCAT(CHAR_PILE_NO,'%')
FROM
D5000.CAR_STRATEGY_INFO
五、去重
比如a表有这样几条数据
id name
1 5
2 4
3 5
4 3
select distinc(a.name) from a
那么查询到的结果应该是 name 5 4 3
六、like
字符匹配操作可以使用通配符 “%” 和 “_”:
%:表示任意个字符,包括零个;
_:表示一个任意字符;
SELECT
p.uav_type
FROM
D5000.PD_UAV_INFO p
WHERE p.uav_type LIKE '小%';
七、group by
group by 用于按其类进行分类汇总
八、order by
对所查询的列进行降序排列
order by 和where语句连着使用时要放在 where后面