SQL语句实现按照分组划分优先级


SQL语句实现按照分组划分优先级

-------分组划分优先级
SELECT B.*
  FROM (SELECT A.color,
               A.P,
               row_number() over(partition by P order by color desc) rn
          FROM (SELECT 'red' AS color, '3' AS P
                  FROM DUAL
                UNION
                SELECT 'red' AS color, '3' AS P
                  FROM DUAL
                UNION
                SELECT 'black' AS color, '3' AS P
                  FROM DUAL
                UNION
                SELECT 'yellow' AS color, '2' AS P
                  FROM DUAL
                UNION
                SELECT 'green' AS color, '2' AS P
                  FROM DUAL
                UNION
                SELECT 'blue' AS color, '1' AS P FROM DUAL) A) B
 WHERE rn < 2

结果截图:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM