sql - 排序日期时间 varchar
问题描述
我正在寻求帮助。我有一个日期字段作为日期时间 YYYY/MM/DD HH:MM:SS,我需要它是 DD/MM/YYYY HH:MM:SS。然后我使用了 convert(varchar) 但不能按 desc 排序,显示如下:
31/01/2019 17:00:00:000
31/01/2019 17:00:00:000
18/01/2019 13:30:00:000
18/01/2019 13:30:00:000
07/02/2019 03:00:00:000
07/02/2019 03:00:00:000
14/02/2019 12:00:00:000
CONVERT(VARCHAR(10),ISNULL(tbl_date1,tbl_date2),103) + ' ' + CONVERT(VARCHAR(20),ISNULL(tbl_date1,tbl_date2),14)
我不知道如何在 sql 中执行此操作。我已经厌倦了演员和转换,我一直得到相同的结果。
我一直在寻找,并尝试不同的方法,只是没有得到结果。任何帮助都会非常感激,谢谢!
解决方案
试试这个:
SELECT *
,CONVERT(VARCHAR(10),ISNULL(tbl_date1,tbl_date2),103) + ' ' + CONVERT(VARCHAR(20),ISNULL(tbl_date1,tbl_date2),14)
FROM ...
ORDER BY ISNULL(tbl_date1,tbl_date2) DESC
推荐阅读
- java - 如何检索 BEACON 的经纬度?
- r - 从样本中抽取 d 个观测值 n 次并计算平均值
- vsphere - 如何将文件从 Windows XP 传输到 vSphere 5.5 中的虚拟机?
- swift - Swift 4 Firebase 在线状态更新
- java - 是否可以获得 putextra 的名称/标签?
- java - 从 Google PlayStore 下载应用程序时出现错误 _504 或错误 - 108 .. 代码中出现此错误的原因可能是什么?
- haskell - 为什么我必须从 build-deps 中删除 `ekg` 才能让 haskell stack/cabal 在 Windows 上找到我的 dll?
- javascript - Changing state with body width change in React
- io - MetaGraphs 加载和保存
- c# - How to design code for a given task following software design pattern?