select c1,c2,c3,c4,c5,c6
from table
where c5 in ('a', 'b')
从这里开始,我想将列c5拆分为两列,然åŽæ ¹æ®å®ƒä»¬å¯¹c6的值对这些列进行排åºã€‚一列应由所有结果组æˆï¼Œå¦ä¸€åˆ—应为b结果。我已ç»èƒ½å¤Ÿä½¿ç”¨rank()对它们进行排åï¼Œä½†æ˜¯æ— æ³•å°†åˆ—åˆ†å¼€ã€‚æˆ‘è¿˜æ²¡æœ‰å¾—åˆ°å…¶ä»–äººä¹ æƒ¯ä¸ºæˆ‘å·¥ä½œçš„æŠ€æœ¯ã€‚
ç”案 0 :(得分:0)
select c1,c2,c3,c4,c5,c6, rank() over (partition by ... order by case when c5='a' then 1 case when c5='b' then 2 end) as rnk;
我完全ä¸æ˜Žç™½c5包å«çš„内容。如果您的情况更æ¢when c5='a'
之类的æ¡ä»¶ã€‚