1.regexp_replace(name, '(|)|\\(|\\)', '')
注意是三个参数,作用:将name字段对应的值去匹配中英文括号,匹配到把括号替换掉,至于\\(,是因为英文括号需要转义,但中文则不需要。
2.str_to_time(inputtime)
很明显 日期转字符串
3.窗口函数
select name,code
from (select d.*,
row_number() over(partition by name order by inputtime desc) rn
from basiclist d
where dt = regexp_replace(to_date(subdate(now(), 1)),'-','') and (data_status!='D' or data_status is null) and status = '1'
and nvl(code,'') <> ''
) e
where rn = 1
比group by高级,根据name分组之后因为row_number()给每组标号, order by根据inputtime排了序, where rn = 1只拿每组中rn=1的数据。