SQLite格式化不规范的日期文本
不同的人输入日期数据会有不同的结论,
例如:2020.4.7;2020/4/07;等等
但是这些日期格式并不适用sqlite,因此我们就需要格式化这些日期,
为了方便各种可能,我们来适配一下,
解题思路是这样的:
①日期分隔无非就是"-"、"."、"/",sqlite是以"-"为分隔符的,所以第一步是替换并update;
②判断日期第7位,如果是分隔符,则月份需要补零,先做一次update
③判断日期长度,如果长度是9,日的部分需要补零,再做一次update即可
--替换日期分隔符 update 数据表 SET 日期 = replace(replace(replace(日期,'.','-'),'/','-'),'\','-'); --select substr(日期,1,5)||'0'||substr(日期,6) from 数据表 where substr(日期,7,1)='/' update 数据表 SET 日期=substr(日期,1,5)||'0'||substr(日期,6) where substr(日期,7,1)='-'; --select substr(日期,1,8)||'0'||substr(日期,9) from 数据表 where length(日期)=9 update 数据表 SET 日期 = substr(日期,1,8)||'0'||substr(日期,9) where length(日期)=9;
扫描二维码推送至手机访问