如果列的外观和行为与列联表中的日期相似,则无法正确排序



我调出一个链接到数据库的Excel数据透视表。其中有一列的日期格式为dd.mm.yyyy。该列被识别为日期,可以在短日期、长日期和时间之间切换。它还显示从最老到最新的顺序,而不是从A到z。但是当我想对这列进行排序时,它不能正确排序。例如,当我从最新日期到最旧日期排序时,日期以以下顺序出现:

30.01.2023
25.05.2022
01.09.2022
01.09.2022
12.12.2022
12.12.2022
30.01.2023
30.01.2023
02.11.2021
05.01.2022
25.05.2022
27.06.2022
18.10.2022

没有意义。你知道问题出在哪里吗?我可以上传一个SQL查询链接到这个表,如果它有帮助。谢谢你的建议:-)

例如,我试图通过

从问题列中再添加一列
CONVERT(varchar, CAST(sd.posting_date as datetime), 104) AS "Invoice date"

然而,这也没有帮助。因此,无法将此列切换到Excel

中的日期

您需要添加ORDER BY以按如下方式对它们进行排序:

order by中,数据类型应该是datetime

select CONVERT(varchar, CAST(sd.posting_date as datetime), 104) AS "Invoice date"
from mytable sd
order by convert(datetime, sd.posting_date, 104) desc

最新更新