sql - SQL将yyyy-MM-ddThh:mm:ssZ形式的字符串转换为日期时间
问题描述
我有一个字符串格式的变量,比如2019-11-25T14:22:56.529Z。我需要提取这个字符串变量的日期部分并提取所有具有最新日期的记录。
ID time (in string format, not a timestamp yet)
-------------------------------
1 2019-11-25T15:20:56.539Z
2 2019-11-25T04:23:56.522Z
3 2019-11-25T11:11:54.509Z
4 2019-12-25T10:22:36.129Z
5 2019-12-25T09:22:29.349Z
6 2019-12-25T08:22:56.209Z
我想要这个输出:
ID time
---------------
4 2019-12-25
5 2019-12-25
6 2019-12-25
一般来说,我也想知道如何将这种类型的字符串变量转换为日期格式,以便将来按日期时间排序。谢谢!
解决方案
只需为此使用 substring 函数
select substr(time,1,10) as date from tablename;
更新 这会将其转换回日期,您可以进行排序
select cast(substr(time,1,10) as date) as date from tablename;
推荐阅读
- python - 如何在 Matplotlib 中的 Y 轴和开始和结束垂直条之间留出一些空间
- c++ - 在opencv中获取C ++中灰度图像的直方图
- sql - MS Sql 按子字符串拆分特定列
- python - `isinstance(x, y)` 和 `x.__class__ == y` 之间的区别
- javascript - 在asp.net core mvc中将数据从部分视图传递到其父视图
- javascript - Firestore 从动态键字段或变量中获取值
- java - 比较两个充满相似数据的 avro 文件时,如何跳过同步标记?
- c# - sqlite 是否在选择查询结果中添加任何元数据信息?
- spring-boot - 如何将 RequestHeader 与执行器端点一起使用?
- javascript - DevExtreme React - 防止使用 useState 进行渲染