目录

sql 根据身份证号获取出生日期并转成对应格式

sql server

查询判断身份证号是18位的

复制代码
select    SUBSTRING(SUBSTRING(IDCard,7,8),1,4)+'-'+SUBSTRING(SUBSTRING(IDCard,7,8),5,2)+'-'+SUBSTRING(SUBSTRING(IDCard,7,8),7,2) from 表 where    Birthday is null and LEN(IDCard)=18

修改

复制代码
update 表set Birthday=SUBSTRING(SUBSTRING(IDCard,7,8),1,4)+'-'+SUBSTRING(SUBSTRING(IDCard,7,8),5,2)+'-'+SUBSTRING(SUBSTRING(IDCard,7,8),7,2) where   Birthday is null and LEN(IDCard)=18
 

oracle

复制代码
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;
复制代码
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;
本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
喜欢吃豆2 分钟前
prompts提示词经典模板
java·服务器·数据库·人工智能·prompt
AI Echoes17 分钟前
LLaMA 常见面试题
数据库·人工智能·python·机器学习·chatgpt
KEEPMA42 分钟前
在线上定位1G日志文件中的异常信息时,我这样做合适吗
java·服务器·数据库
hxung1 小时前
MySQL与Oracle深度对比
数据库·mysql·oracle
gys98951 小时前
去除Mysql表中的空格、回车、换行符和特殊字符
数据库·mysql
SHIPKING3931 小时前
【LangChain少样本提示工程实战】FewShotPromptTemplate原理与应用解析——附运行代码
数据库·python·langchain·llm·fewshotprompt
今天不学习明天变拉吉2 小时前
分页查询列表每页1000条的优化
java·数据库·mysql·性能优化
huangsu_1232 小时前
java+postgresql+swagger-单表批量和循环insert、delete操作(八)
java·开发语言·数据库·postgresql
superonion06202 小时前
【DB2】备份失败SQL1762N
数据库
小小不董3 小时前
Oracle OCP认证考试考点详解083系列03
运维·服务器·数据库·oracle·dba