with as语句性能求优化,该怎么处理

with as语句性能求优化语句如下:WITH g AS(select owner, steps from T1)SELECT g.OwnerFROM gWHERE g.Ste

with as语句性能求优化
语句如下:
WITH g AS(   select owner, steps from T1      )                                    SELECT g.Owner    FROM g    WHERE g.Steps = (SELECT MIN(Steps) FROM g)
                        
with中的子查询很快,只有几条数据,<0.1秒,但是加了后面的语句,用来取出结果中最少的那个step所对应的用户,结果需要10秒左右,我不知道性能消耗在哪里?应该如何优化?


                 
                
[解决办法]


select *
  from (select t1.Owner,
               rank() over(order by t1.Steps) myrank
          from t1) t
 where t.myrank = 1


这样你试试。