2015-03-07 26 views
7

Tôi cần gửi truy vấn SQL tới cơ sở dữ liệu cho tôi biết có bao nhiêu hàng trong bảng. Tôi có thể nhận được tất cả các hàng trong bảng với một SELECT và sau đó đếm chúng, nhưng tôi không thích làm theo cách này. Có cách nào khác để yêu cầu số lượng các hàng trong một bảng đến máy chủ SQL?Hàng đếm SQL trong một bảng

Trả lời

16

Vâng, SELECT COUNT(*) FROM TableName

1
select sum([rows]) 
from sys.partitions 
where object_id=object_id('tablename') 
and index_id in (0,1) 

rất nhanh nhưng rất hiếm khi không chính xác.

+0

Tôi chạy bảng này với một bảng có hơn 400 triệu hàng. Siêu nhanh. –

1

Sử dụng truy vấn này:

Select 
    S.name + '.' + T.name As TableName , 
    SUM(P.rows) As RowCont 

From sys.tables As T 
    Inner Join sys.partitions As P On (P.OBJECT_ID = T.OBJECT_ID) 
    Inner Join sys.schemas As S On (T.schema_id = S.schema_id) 
Where 
    (T.is_ms_shipped = 0) 
    AND 
    (P.index_id IN (1,0)) 
    And 
    (T.type = 'U') 

Group By S.name , T.name 

Order By SUM(P.rows) Desc 
0

Đây là Query

select count(*) from tablename 

or 

select count(rownum) from studennt 
+0

Cảm ơn Marcanuy. –

-1

Tại sao không bạn chỉ việc kích chuột phải vào bảng và sau đó bất động sản -> Bộ nhớ và nó sẽ cho bạn biết hàng đếm. Bạn có thể sử dụng số dưới đây cho số lượng hàng trong một chế độ xem

SELECT SUM (row_count) 
FROM sys.dm_db_partition_stats 
WHERE object_id=OBJECT_ID('Transactions')  
AND (index_id=0 or index_id=1)` 
Các vấn đề liên quan