SQLite获取身份证出生日期及年龄的方法
sqlite的日期是以"-"为分隔符,所以日期串需符合规则,否则不能直接使用SQLite的日期函数
另一个需要注意的地方,now字符获取的是系统的当前日期时间,所以系统的时间务必准确,否则必错
具体可以参考:SQLite格式化不规范的日期文本
--查询身份中出生日期信息 select substr(身份证,7,4)||'-'||substr(身份证,11,2)||'-'||substr(身份证,13,2) FROM 数据表 where length(身份证)=18; --更新出生日期 update 数据表 SET 出生日期=substr(身份证,7,4)||'-'||substr(身份证,11,2)||'-'||substr(身份证,13,2) where length(身份证)=18; --查询年龄 select cast(strftime('%Y.%m%d','now')-strftime('%Y.%m%d',出生日期) as int) from 数据表; --更新年龄 update 数据表 set 年龄=cast(strftime('%Y.%m%d','now')-strftime('%Y.%m%d',出生日期) as int);
扫描二维码推送至手机访问