1)时间戳转date
select
TO_DATE(
(TO_CHAR(1667360418000 / (1000 * 60 * 60 * 24) +
TO_DATE('1970-01-01 08:00:00', 'YYYY-MM-DD HH:MI:SS'), 'YYYY-MM-DD HH:MI:SS')),
'YYYY-MM-DD HH:MI:SS'
) aa from dual
2)截取命令
#指定位数截取
#substr(源字符串,开始位置,截取长度-为空时默认后全部截取);
select substr(a.xx,0,2) from t1 a
3)获取指定符号位置
#instr(源字符串, 目标字符串, 起始位置, 匹配序号)
#获取指定符号的位置(获取表内xx字段中从第一次获取‘-’开始,第二次获取‘-’的位置数)
select instr(a.xx,'-',1,2) from t1 a
4)将group by 后的数据同组放一个字段里逗号隔开
image.png
# mysql 使用 group_concat(合并字段) oracle使用 wm_concat 恐破坏表字段索引
SELECT *, group_concat( tname ) FROM table4 GROUP BY sname
5)将字段内"," 隔开的数据 分行列出
select a.ponport, regexp_substr(a.ponport, '[^,]+', 1, level) as ponport2
from (select ponport from table1) a
connect by level <= REGEXP_COUNT(a.ponport, '[^,]+')
6) 字符串替换
# REPLACE(目标字符串,要替换字符,替换成的字符)
REPLACE(portid, 'NA', '1') port,
网友评论