以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  根据身份证号码生成出生日期和性别  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=122965)

--  作者:Liangcai
--  发布时间:2018/8/5 20:55:00
--  根据身份证号码生成出生日期和性别
基本信息表有身份证号码列,根据身份证号码生成出生日期和性别,请老师指教,谢谢!
Select  姓名,? As 性别,IIF(身份证号 Is Not Null,MID(身份证号,7,4) & "-" & MID(身份证号,11,2) & "-" & MID(身份证号,13,2)) As 出生日期 Fr om {基本信息}"
[此贴子已经被作者于2018/8/5 21:57:46编辑过]

--  作者:Liangcai
--  发布时间:2018/8/5 22:16:00
--  
这样对吗?
Select  学生编号,学生姓名,IIF(身份证号 Is Not Null,MID(身份证号,7,4) & "-" & MID(身份证号,11,2) & "-" & MID(身份证号,13,2)) As 出生日期,IIF(身份证号 Is Not Null,IIF(MID(身份证号,15,1) MOD 2,"男","女")) As 性别 Fr om {基本信息}

--  作者:有点甜
--  发布时间:2018/8/5 22:33:00
--  

17位表示性别,代码没问题。

 

如果报错,做个实例发上来测试。


--  作者:Liangcai
--  发布时间:2018/8/5 22:38:00
--  
IIF(学生身份证号 Is Not Null,IIF(MID(学生身份证号,17,1) MOD 1,"男","女")) As 性别 
出现错误
提供程序无法确定 String 值。例如,该行刚刚创建,未提供 String 列的默认值,并且使用者尚未设置新 String 值。

--  作者:有点甜
--  发布时间:2018/8/6 0:09:00
--  
上传实例测试,我测试没问题。
--  作者:Liangcai
--  发布时间:2018/8/6 13:58:00
--  

是不是有身份证号不正确!

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目7.zip


--  作者:有点甜
--  发布时间:2018/8/6 15:22:00
--  

打开后,执行这个代码没问题

 

Select  编号,IIF(身份证号 Is Not Null,MID(身份证号,7,4) & "-" & MID(身份证号,11,2) & "-" & MID(身份证号,13,2)) As 出生日期,IIF(身份证号 Is Not Null,IIF(MID(身份证号,17,1) MOD 2,"男","女")) As 性别 From {基本信息}

[此贴子已经被作者于2018/8/6 16:16:15编辑过]

--  作者:Liangcai
--  发布时间:2018/8/6 15:40:00
--  
找出来了,有15位的,谢谢!