use*_*331 2 sql join count sql-server-2012
我怎么能在执行后获得多少行?
我的查询是:
SELECT a.Emp,b.orders
from table as a inner join table1 b
on a.ID = B.ID
Run Code Online (Sandbox Code Playgroud)
如何查找上述连接中返回的行数?
-- statement here
SELECT @@ROWCOUNT;
Run Code Online (Sandbox Code Playgroud)
你也可以在声明的每一行上得到它,但当然这有点贵,例如
SELECT x, y, z, COUNT(*) OVER() FROM ...
Run Code Online (Sandbox Code Playgroud)
您必须使用 SELECT COUNT(*) ...相同的条件或通过ROW_NUMBER函数添加带行计数的列:
SELECT a.Emp,b.orders, RN = ROW_NUMBER () OVER (ORDER BY a.Emp,b.orders)
FROM table as a inner join table1 b on a.ID=B.ID
Run Code Online (Sandbox Code Playgroud)
...或者@@ROWCOUNT在选择之后使用.
而不是ROW_NUMBER它更容易使用COUNT(*) OVER ( Order By ...),其中每行包含相同的总计数,而ROW_NUMBER将返回一个序列号,其中只有最后一个记录(acc.ORDER BY)将具有总计数.
| 归档时间: |
|
| 查看次数: |
4761 次 |
| 最近记录: |