python - 关于在 python 或 SQL 中一次更改所有数据库项目的 SQLite 日期格式的方法的任何建议?
问题描述
当前数据库中的每个项目都使用日期格式 mm/dd/yyyy - 但是,要使用任何日期 sqlite 函数,我相信它必须类似于 YYYY-MM-DD。有一些变化,但基本上我需要年份优先和“-”而不是“/”。我试图想办法在一个循环中一次更改所有这些,可能在 python 中,但我被卡住了,因为当前格式根本不被识别为日期,即使数据类型是“DATE”。如果有人有类似的经历或有任何想法,从 sql 中提取,单独解析每个条目并在 python 中重新排列,然后发送回 sql(这听起来很痛苦),我将不胜感激!
解决方案
它可以在 SQL 中完成:
sqlite> create table d (date);
sqlite> insert into d values ('12/31/2020');
sqlite> select * from d;
12/31/2020
sqlite> update d set date = substr(date,7,4) || '-' || substr(date,1,2) || '-' || substr(date,4,2);
sqlite> select * from d;
2020-12-31
sqlite>
推荐阅读
- python - 如何从python中的前一个元素中减去一个元素?
- node.js - 如何从 nodeenv(虚拟环境)运行 npm
- c# - 如何在 aspnet 核心身份中添加多个身份存储?
- c# - 如何更改 ASMX Web 服务的 WSDL 端口地址?
- css - 元视口(固定宽度)在具有背景颜色的透明图像上导致不需要的边框
- ruby-on-rails - Activestorage:获取 S3 密钥(不是 Rails blob 密钥)
- analytics - 在用户处于 icognito 模式或清除缓存和 cookie 时跟踪自定义 Web 搜索引擎的关键字分析
- javascript - 如何在鼠标释放时将文本拖放到文本框中?
- android - 我们应该在哪里更新 MVVM 中的模型
- java - 通过 WebFlux 中的过滤器向传出请求添加标头