tzkr.net
当前位置:首页 >> sql sErvEr 2005 中,一个身份证字段的名字为"sFz"... >>

sql sErvEr 2005 中,一个身份证字段的名字为"sFz"...

select case when LEN(sfz)=18 then year(GETDATE())-SUBSTRING (sfz ,7,4) when LEN(sfzh)=15 then year(GETDATE())-cast('19'+SUBSTRING (sfz ,4,2) as int ) else 0 end as '年龄' ,* from 查询表 如果是空的或者是 有军官证号 则年龄显示0 。

居民身份证登记的项目包括:姓名、性别、民族、出生日期、常住户口所在地住址、公民身份号码、本人相片、证件的有效期和签发机关。 公民身份号码是每个公民唯一的、终身不变的身份代码,由公安机关按照公民身份号码国家标准编制。 居民身份证使...

update xx set csrq=substring(sfzhm,7,8) from xx where len(sfzhm)=18 update xx set csrq='19'+substring(sfzhm,7,6) from xx where len(sfzhm)=15 服务器: 消息 242,级别 16,状态 3,行 1 The conversion of a char data type to a dateti...

首先你需要分析身份证是15位还是13位的,15位的年的数据是4位 20~30年龄段,应该用当前年度-身份证出生年度 4位年度好办,关键是2位年度,需要单独处理 99一定表示1999年出生,02也许表示2002年也许表示1902年。这个你就要在程序中规定一下,2位...

select * from k_clk where (LEN(sfz)=18 and SUBSTRING(sfz,11,2)='12') or (LEN(sfz)=15 and SUBSTRING(sfz,9,2)='12') 对于15或18位以外的数据,认为是错误的身份证号码,但是15位或18位的就得需要函数判断了,网上这种函数很多的,建议在程...

身份证号码的长度分为15位和18位,改法不同,但在oracle中可用一句话来更新。 1、如shenfenzheng表中数据如下: 2、现要更新hiredate字段,使之为身份证号码信息中的出生日期。可用如下语句: update shenfenzheng set hiredate=case when lengt...

--粗放计算,只考虑了年度,没有考虑月份和日期 --身份证已经考虑了15位和18位的情况 --准备测试数据 declare @T table(nl int,sfz varchar(18)) insert into @T select 0,'324532198103080654' union all select 0,'431324741127075' select * ...

--不好意思,这两天都没上网。不知道下面的语句是否能达到你的要求。 --1.建存储过程p_auto_cardcode create procedure p_auto_cardcode @area varchar(6),@birthday datetime,@id varchar(2),@sex varchar(2) as declare @i decimal(18,0),@sfz...

方法1:修改表定义,加入年份 方法2:写存储过程 create proc addcolumn @tablename varchar(30), --表名 @colname varchar(30), --要加的列名 @coltype varchar(100), --要加的列类型 @colid int --加到第几列 as declare @colid_max int decla...

update b set b.jg=a.jg where left(b.sfz,2)=a.bh 你试试,

网站首页 | 网站地图
All rights reserved Powered by www.tzkr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com