0
餘米怪異SQL查詢工作返回結果,其中第一項是1和所有後續行是0
Patient_ID Count order_no
1 1 1
2 1 2
2 0 3
2 0 4
3 1 5
3 0 6
,我需要算病人同上,但每一個新病人,計數列是1 。 如果重複,下面的條目應該是0
我米困惑應該如何給SQL
餘米怪異SQL查詢工作返回結果,其中第一項是1和所有後續行是0
Patient_ID Count order_no
1 1 1
2 1 2
2 0 3
2 0 4
3 1 5
3 0 6
,我需要算病人同上,但每一個新病人,計數列是1 。 如果重複,下面的條目應該是0
我米困惑應該如何給SQL
的工作爲了使第一個條目1,所有subsuqent條目0,我相信你需要一個排名用訂單號分區。請檢查下面的sqlfiddle以測試結果。
http://www.sqlfiddle.com/#!3/4e2e2/17/0
SELECT
patient_id
,CASE WHEN r.rank = 1
THEN 1
ELSE 0
END
, order_number
FROM
(
SELECT
order_number
,patient_id
,ROW_NUMBER() OVER (PARTITION BY patient_id ORDER BY order_number)[rank]
FROM
PatientTable
)r
謝謝,它的工作原理! – user1141584
也許接受答案? :)哦,如果你想測試它,小提琴應該會有所幫助。 – cgatian