MS-SQL sort output in descending order

前端 未结 3 2057
情话喂你
情话喂你 2021-01-15 09:09

I have this MS-SQL query with thousands of row records in database:

SELECT DISTINCT TOP 7 DATENAME(MM, mydatetime) + \' \' + CAST(DAY(mydatetime) AS VA         


        
3条回答
  •  星月不相逢
    2021-01-15 09:28

    For your actual requirement, you can use your current query as a derived table and order that result in the way you want:

    SELECT *
    FROM (  SELECT DISTINCT TOP 7 DATENAME(mm, mydatetime) + ' ' 
                                  + CAST(DAY(mydatetime) AS VARCHAR(2)) AS thedate, 
                                  MONTH(mydatetime)                     AS theMonth, 
                                  DAY(mydatetime)                       AS theDay, 
                                  COUNT(page)                           AS totalcount, 
                                  COUNT(DISTINCT page)                  AS visitors 
            FROM   sometable 
            WHERE  page LIKE '%AEC%' 
            GROUP  BY DATENAME(mm, mydatetime) + ' ' 
                      + CAST(DAY(mydatetime) AS VARCHAR(2)), 
                      MONTH(mydatetime), 
                      DAY(mydatetime) 
            ORDER  BY MONTH(mydatetime) DESC, 
                      DAY(mydatetime) DESC) A
    ORDER BY theMonth, theDay
    

提交回复
热议问题