Utilisez ORDER BY videos.posteddate
select distinct top 5
videos.videoid,
videos.videotitle,
videos.videoname,
convert(varchar,videos.posteddate,106) as posteddate,
videos.approvedstatus,
videos.videoimage,
(ISNULL(videos.views,0.0)) as [views],
videos.privacy,
(isnull(videos.rating,0.0)) as rating,
videos.userid,
users.userid,users.username
from
videos
left outer join
users on videos.userid=users.userid
where
videos.approvedstatus='Y' and videos.privacy='P'
order by
videos.posteddate desc
Votre original est l'équivalent de ORDER BY convert(varchar,videos.posteddate,106) DESC
Vous triez donc par chaîne "jj mon aaaa", et non par la date et l'heure réelle souhaitée (aaaa-mm-jj hh, etc.)
Je suppose que c'est SQL Server 2000 :de mémoire, SQL Server 2005 n'acceptera pas cette ambiguïté