sql 从身份证中自动获取出生日期,显示格式为XXXX-XX-XX

[复制链接]
查看11 | 回复4 | 2015-11-19 15:26:10 | 显示全部楼层 |阅读模式
以oracle为例,通过substr()方法截取年月日,即可。代码如下:declare cardid varchar(20);birth varchar(20);begin
/*给cardid赋值一个18位身份证号码*/
birth := substr(cardid,7,4) || '-' || substr(cardid,11,2) || '-' || substr(cardid,13,2);
dbms_output.put_line(birth);end;...
回复

使用道具 举报

千问 | 2015-11-19 15:26:10 | 显示全部楼层
select to_date(substr('123456199010171235',7,8),'yyyy-mm-dd') from dual;...
回复

使用道具 举报

千问 | 2015-11-19 15:26:10 | 显示全部楼层
declare @card nvarchar(20),@result nvarchar(20)set @card='310110190001011239'set @card='310110801212123'if len(@card)=18beginset @result=substring(@card,7,8)select subs...
回复

使用道具 举报

千问 | 2015-11-19 15:26:10 | 显示全部楼层
SQL Server,18为身份证substring(cardid,7,4) + '-' + substring(cardid,11,2) + '-' + substring(cardid,13,2)...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行