0
我有一個查詢從兩個獨立的表中拉出數據,並使用dense_rank將它們放到第三個表中,作爲將患者索賠行分組在一起的一種方式。我遇到的問題是在第二個查詢中,dense_rank以「1」重新開始,而不是拾取第一個查詢結束的位置。Dense_rank在第二個查詢
select
'somenumber'+ right('000000' + cast(dense_rank()OVER(order by o.column1) as varchar(6)),6) AS rank_id
,'Y' as error_flag
,o.column2
,o.column3
,o.column4
,o.column5
,o.column6
,o.column7
,p.column8
,q.column9
,r.column10
into #temp_table
FROM main_table o
LEFT OUTER JOIN some_table p ON o.blah=p.blah
LEFT OUTER JOIN another_table q ON o.snooze=q.snooze
LEFT OUTER JOIN im_confused r ON o.help_me=r.help_me
where o.column11='somenumber'
難道只是更容易包括其他參加了第二臺,其中DENSE_RANK再次重新開始,或者可以DENSE_RANK被操縱,以拿起一日一離開?
你使用哪個版本的mysql允許使用dense_rank()? – McNets
我很抱歉 - MySQL被偶然添加爲標籤。 –
如果你的查詢足夠大,你能發佈一個最簡單的例子嗎? – McNets