access有身份证号码,如何筛选性别和年月日
1个回答
展开全部
问题很简单,我给你一个理论知识,你可以自己分析:
1、身份证分一代、二代,一代是15位数,二代是18位数;
2、两代身份证均是以国家行政区划代码开头,即前面6位,分别是身份证持有人所在省、市、县,每级2位);
3、两代身份证第7位开始都是持有人的生日。不同的是一代为6位,二代为8位。(因为一代遇到了千年虫问题,所以现在都改用二代了。);
4、两代身份证生日后的2位(一代为第13~14位、二代为第15~16位),都是身份证持有人所在乡镇的行政代码;
5、两代身份证乡镇行政代码后的1位(一代为第15位、二代为第17),是性别代码:为奇数是男性,偶数是女性;
由上得知,想在查询中利用身份证来筛选 性别 为 “女” 的资料,则条件可写为:
WHERE (((IIf(Len([身份证])=18,Left(Right([身份证],2),1) Like "[24680]",Right([身份证],1) Like "[24680]"))<>False))
相反 ,要想查询 性别 为“男”的资料,条件可写:
WHERE (((IIf(Len([身份证])=18,Left(Right([身份证],2),1) Like "[13579]",Right([身份证],1) Like "[13579]"))<>False))
出生日期与此相近,望自行测试,不会时,再问……
1、身份证分一代、二代,一代是15位数,二代是18位数;
2、两代身份证均是以国家行政区划代码开头,即前面6位,分别是身份证持有人所在省、市、县,每级2位);
3、两代身份证第7位开始都是持有人的生日。不同的是一代为6位,二代为8位。(因为一代遇到了千年虫问题,所以现在都改用二代了。);
4、两代身份证生日后的2位(一代为第13~14位、二代为第15~16位),都是身份证持有人所在乡镇的行政代码;
5、两代身份证乡镇行政代码后的1位(一代为第15位、二代为第17),是性别代码:为奇数是男性,偶数是女性;
由上得知,想在查询中利用身份证来筛选 性别 为 “女” 的资料,则条件可写为:
WHERE (((IIf(Len([身份证])=18,Left(Right([身份证],2),1) Like "[24680]",Right([身份证],1) Like "[24680]"))<>False))
相反 ,要想查询 性别 为“男”的资料,条件可写:
WHERE (((IIf(Len([身份证])=18,Left(Right([身份证],2),1) Like "[13579]",Right([身份证],1) Like "[13579]"))<>False))
出生日期与此相近,望自行测试,不会时,再问……
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询