选择记录的第一个实例

woo*_*gie 9 sql sql-server-2008

我有一个表,myTable一个其中有两个字段IDpatientID.使用不同的ID,同一个patientID可以在表中多次出现.我怎样才能确保我只获得ONE每个实例patientID.?

编辑:我知道这不是完美的设计,但我需要从数据库中获取一些信息,然后立即修复.

Tim*_*ter 27

你可以使用CTEwith ROW_NUMBER函数:

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

  • 如果有可能的话,我会十次回答这个问题. (4认同)