Đố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