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

Chọn bản ghi đầu tiên

Bạn có thể sử dụng CTE với ROW_NUMBER chức năng:

WITH CTE AS(
    SELECT myTable.*
    , RN = ROW_NUMBER()OVER(PARTITION BY patientID ORDER BY ID)
    FROM myTable 
)
SELECT * FROM CTE
WHERE RN = 1


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CẬP NHẬT một hàng hay XÓA hàng và CHÈN hàng mới nhanh hơn?

  2. Cú pháp không chính xác gần từ khóa 'with' ... câu lệnh trước đó phải được kết thúc bằng dấu chấm phẩy

  3. Cách đặt đối chiếu của cơ sở dữ liệu trong SQL Server (T-SQL)

  4. Hàm YEAR (ngày) hiệu quả như thế nào?

  5. Tại sao SQL Server tự động bỏ qua khoảng trống ở cuối?