Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để sử dụng ROW_NUMBER ()?

Đối với câu hỏi đầu tiên, tại sao không chỉ sử dụng?

SELECT COUNT(*) FROM myTable 

để đếm.

Và đối với câu hỏi thứ hai, khóa chính của hàng là thứ nên được sử dụng để xác định một hàng cụ thể. Đừng thử và sử dụng số hàng cho điều đó.

Nếu bạn trả về Row_Number () trong truy vấn chính của mình,

SELECT ROW_NUMBER() OVER (Order by Id) AS RowNumber, Field1, Field2, Field3
FROM User

Sau đó, khi bạn muốn quay lại 5 hàng thì bạn có thể lấy số hàng hiện tại và sử dụng truy vấn sau để xác định hàng có currentrow -5

SELECT us.Id
FROM (SELECT ROW_NUMBER() OVER (ORDER BY id) AS Row, Id
     FROM User ) us 
WHERE Row = CurrentRow - 5   


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Len () so với datalength () trong SQL Server 2005

  2. Nhóm luôn sẵn sàng của SQL Server:Cài đặt và cấu hình, Phần 2

  3. Các cách khác nhau để chèn dữ liệu vào Bảng SQL Server - Hướng dẫn SQL Server / TSQL Phần 100

  4. Cách tìm một mục danh sách tại một vị trí được chỉ định trong SQL Server

  5. Kết hợp hai bảng không có trường chung