在大数据开发过程中经常会遇到,要进行解析数据。常用的身份证解析出生年月日,性别等。这里介绍,通过身份证解析获取指定格式出生年月日。
1、如果单个SQL,可以进行调用对应方法。
先通过字符串截取,获取到身份证信息离得出生年月日时间;
SELECT (SUBSTR(IdNumStr,7,8 )) FROM DUAL;
输出是年月日字符串。再转换为对应需要的时间格式,例YYYY-MM-DD
SELECT to_char(to_date((SUBSTR(IdNumStr,7,8 )),'yyyy-mm-dd'),'yyyy-mm-dd') FROM DUAL;
2、如果用到的比较多,建议写成数据库函数方法,统一调用。SQL语句如下:
create function U_GET_BIRTH(IDNUM in varchar2) return varchar2 as
begin
--根据身份证号取得对应的出生年月日,并转换为对应的日期格式
return to_char(to_date((SUBSTR(IDNUM ,7,8 )),'yyyy-mm-dd'),'yyyy-mm-dd');
end;