use a CTE like below;WITH CommentsAS(SELECT id,content,stamp,1 as level,CAST(NULL AS datetime) AS parentdate,CAST(NULL AS integer) AS parentidFROM commenttable WHERE parent IS NULLAND locid = @valUNION ALLSELECT t.id,t.content,t.stamp,c.level + 1 ,c.stamp,c.idFROM commenttable tINNER JOIN Comments cON c.id = t.parent )SELECT *FROM CommentsORDER BY COALESCE(parentdate,stamp) DESC,COALESCE(parentid,id),Level
------------------------------------------------------------------------------------------------------SQL Server MVPhttp://visakhm.blogspot.com/