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.OpinionRate DESC, G.Sort DESC) AS T1 ORDER BY OpinionRate ASC, Sort ASC) AS T2 ORDER BY OpinionRate DESC, Sort DESC