SELECT convert(VARCHAR, WH.DATE, 103),
PN.partyname,
BT.birdname,
dt.totalweight,
dt.rateperkg,
dt.dcno,
mr.branch
FROM K_RT_Dailyentryretail DT
INNER JOIN K_RT_PartyName PN
ON pn.sno = dt.partyname
INNER JOIN K_RT_WarehouseDetails WH
ON dt.branchdate = wh.sno
INNER JOIN K_RT_BirdType BT
ON dt.birdtype = bt.sno
INNER JOIN K_RT_MasterRetailStores MR
ON MR.sno = WH.branch
WHERE MR.branch + ' - ' + convert(VARCHAR, WH.DATE, 103) = @date
ORDER BY convert(VARCHAR, WH.DATE, 103) DESC
这里..按日期排序不起作用。我该如何解决这个问题?
答案 0 :(得分:4)
尝试更改:
order by convert(varchar,WH.date,103) desc
为:
order by WH.date desc
答案 1 :(得分:1)
当您对日期进行排序时,使用格式“103”转换为varchar字符串时,日期字符串如下所示:
dd/mm/yyyy
所以,排序首先按“dd”排序,然后按“mm”排序,然后排序“yyyy”。
您可以使用103以格式显示日期,但是当您按顺序执行时,请使用:
order by WH.date desc