排序日期时间 varchar

Sort datetime 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