Q:

Order by SQL not working as expected, I don't know what it's doing but I want a simple sort of date ascending

I have a query that isn't behaving as expected when I use the order by function, but I want it to sort correctly by the date ascending
I'm working on Microsoft SQL Server Management Studio 2008 R2.
The Query is:
DECLARE @StartDate DATETIME
    ,@EndDate DATETIME

SET @StartDate = '2020-01-01'
SET @EndDate = '2020-01-10'

SELECT DATENAME(dw, NCPDPREPS.CREATEDON) + ' - ' + CONVERT(VARCHAR, ncpdpreps.CREATEDON, 1) AS [DATE YOU DID IT]
    ,COUNT(CONVERT(DATE, NCPDPREPS.CREATEDON, 1)) [CLAIMS ADJUDICATED]
    ,('ASDGFW342WT4' + ' ' + 'AUIESJDFAJKSDHF' + ' ' + PNNAMES.PROFDESIG) AS [CREATOR/CLINICIAN]
FROM NCPDPREPS
LEFT JOIN PNNAMES ON PNNAMES.DELFLAG = 0
    AND PNNAMES.NO = NCPDPREPS.CFK_PNNAMES
WHERE NCPDPREPS.FIELDNAME = 'D2'
    AND PNNAMES.LNAME = 'FIGUEIRA'
    AND NCPDPREPS.CREATEDON BETWEEN @STARTDATE
        AND @ENDDATE
GROUP BY DATENAME(dw, NCPDPREPS.CREATEDON) + ' - ' + CONVERT(VARCHAR, ncpdpreps.CREATEDON, 1)
    ,PNNAMES.FNAME
    ,PNNAMES.LNAME
    ,PNNAMES.PROFDESIG
ORDER BY [DATE YOU DID IT] ASC

This results in:

But I want it to result in it:

A:

Simply use aggregation functions in the ORDER BY:
ORDER BY MIN(NCPDPREPS.CREATEDON)

