-2
我正在一个项目中,我需要得到有限的结果之前的总行数。我有这个工作在MySQL中,但我需要它在SQL Server中工作。SQL Server @@ rowcount之前
我知道我可以用更多的时间来解决这个问题,但我很累,而且我还需要做很多其他的工作。任何帮助将不胜感激。
这里是我的查询:
WITH filter
AS (SELECT "order"."amount",
"order"."id",
"status",
"priority",
"poNum",
"ip",
"customer" AS 'cID',
"customer"."firstName",
"customer"."lastName",
"date",
"shippingMethod",
"site" + ':' + Isnull("admin", '') AS "site",
"displayedCurrency",
"address"."country",
Isnull((SELECT COUNT("rma"."id")
FROM "rma"
WHERE "rma"."order" = "order"."id"
GROUP BY "rma"."order"), 0) AS rma,
Row_number() OVER (ORDER BY "order"."id" DESC) AS rownum,
Isnull((SELECT COUNT("order")
FROM order_comment
WHERE "order" = "order"."id"
GROUP BY "order"), 0) AS COMMENT
FROM "order"
LEFT JOIN "customer"
ON "customer"."id" = "order"."customer"
LEFT JOIN "address"
ON "address"."id" = "order"."sAddress")
SELECT *
FROM "filter"
WHERE "rownum" BETWEEN 0 AND 10
ORDER BY filter."id" DESC
SELECT @@ROWCOUNT AS 'cnt'
@sll谢谢格式化。 – 2012-03-30 21:02:51
使用http://www.dpriver.com/pp/sqlformat.htm对未来的帖子 – sll 2012-03-30 21:08:20
谢谢,书签。 – 2012-03-30 21:10:07