按日期排序未正确列出从数据库中选择的日期
Order by DATE does not properly list the dates selected from DB
我有一个像这样的简单查询...
SELECT Distinct(CONVERT(VARCHAR(8), ListDate, 1)) as ListDate
FROM tblData
日期像这样拉起来...
01/13/17
04/06/17
10/12/16
07/28/16
05/24/16
07/10/17
现在,我做其中任何一个都没关系..
Order By ListDate ASC or Order By ListDate DESC
日期顺序不对,都是 17 和 16 混在一起的
我试过了
Order By Cast(listDate as date)
但它给了我错误说明
Order By items must appear in the select list if Select Distinct is
Specified?
任何方式我都可以按升序排列日期
您可以使用的一种方法是:
SELECT CONVERT(VARCHAR(8), ListDate, 1) as ListDate
FROM tblData
GROUP BY CONVERT(VARCHAR(8), ListDate, 1)
ORDER BY MIN(ListDate) DESC;
换句话说,如果您使用 GROUP BY
,您可以更灵活地进行查询。
我有一个像这样的简单查询...
SELECT Distinct(CONVERT(VARCHAR(8), ListDate, 1)) as ListDate
FROM tblData
日期像这样拉起来...
01/13/17
04/06/17
10/12/16
07/28/16
05/24/16
07/10/17
现在,我做其中任何一个都没关系..
Order By ListDate ASC or Order By ListDate DESC
日期顺序不对,都是 17 和 16 混在一起的
我试过了
Order By Cast(listDate as date)
但它给了我错误说明
Order By items must appear in the select list if Select Distinct is Specified?
任何方式我都可以按升序排列日期
您可以使用的一种方法是:
SELECT CONVERT(VARCHAR(8), ListDate, 1) as ListDate
FROM tblData
GROUP BY CONVERT(VARCHAR(8), ListDate, 1)
ORDER BY MIN(ListDate) DESC;
换句话说,如果您使用 GROUP BY
,您可以更灵活地进行查询。