Sql 第二个查询中的稠密_秩

Sql 第二个查询中的稠密_秩,sql,sql-server,Sql,Sql Server,我有一个查询,从两个单独的表中提取数据,并将它们放入第三个表中,使用dense_rank将患者索赔行分组在一起。我遇到的问题是在第二个查询中,稠密的_排名再次从“1”开始,而不是从第一个查询结束的地方开始 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

我有一个查询,从两个单独的表中提取数据,并将它们放入第三个表中,使用dense_rank将患者索赔行分组在一起。我遇到的问题是在第二个查询中,稠密的_排名再次从“1”开始,而不是从第一个查询结束的地方开始

 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'

在第二个表中重新开始密集列组时,是否更容易包含另一个联接,或者可以操纵密集列组以拾取第一个表停止的位置?

只是使用临时表,然后在插入到最终表中时执行密集列组。解决了问题,但问题仍然存在-你能操纵稠密的排名吗?

你使用的是哪个版本的mysql允许稠密的排名()?我很抱歉-mysql被意外添加为标记。如果你的查询足够大,你能举个小例子吗?@McNets-已经添加了一个精简版本的查询。我知道列可能不匹配,但我更关心的是知道第二个查询(除了“from”源之外是相同的)是否可以在第一个查询结束的地方提取密集的列。有没有办法找到最后插入的列?