SELECT * FROM (SELECT TOP 10 * FROM (SELECT TOP 10 G.Uid, C.CateCode, G.DealerID, G.Title, G.ImgS, G.Price, G.Cmoney, G.OptionKind, G.Stock, G.ReadCnt, G.OpinionRate, G.IsSoldOut, dbo.fnCheckCoupon(G.SiteID, G.Uid, C.CateCode, GETDATE(), '') AS ChkCoupon, G.DeliveryPolicy, G.DeliveryMethod, G.DeliveryFee, G.DeliveryLimit, G.IsIconA, G.IsIconB, G.IsIconC, G.IsIconD, G.IsIconE, G.IsIconF, G.Sort FROM T_GOODS AS G JOIN (select * from dbo.fnGetGoodsCategory('rental', 147)) AS C ON G.SiteID=C.SiteID AND G.Uid=C.GoodsUid WHERE G.SiteID='rental' AND G.GoodsType='N' AND G.State='100' AND G.IsDisplay='T' AND C.IsHidden='F' AND C.CateCode IN (SELECT CateCode FROM fnGetCateChild('rental', 147, 0) WHERE IsHidden='F') ORDER BY G.ReadCnt DESC, G.Sort DESC) AS T1 ORDER BY ReadCnt ASC, Sort ASC) AS T2 ORDER BY ReadCnt DESC, Sort DESC