PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Dense_rank първо конвертиране на Oracle в Postgresql

Мисля, че можете да го конвертирате така, че да съдържа един DENSE_RANK() и направете MAX от всички в първия запис.

SELECT UID,
       MAX(OWNER),
       MAX(EMPLOYEE_KEY),
       MAX(MANAGER),
       MAX(CALL_CENTER_NAME),
       MAX(CITY)
  FROM (SELECT ai.UID,
               ai.OWNER AS OWNER,
               ai.EMPLOYEE_KEY AS EMPLOYEE_KEY,
               ai.MANAGER_LOGIN AS MANAGER,
               ai.CALL_CENTER_NAME AS CALL_CENTER_NAME,
               ai.CITY AS CITY,
               DENSE_RANK () OVER (PARTITION BY ai.UID ORDER BY ai.AGENT_ID DESC) rnk
          FROM agent_info ai
         WHERE TRANSLATE (ai.UID, 'X0123456789', 'X') IS NULL)
 WHERE rnk = 1
GROUP BY UID;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ролята не съществува и не може да се създаде база данни, когато се използва PostgreSQL

  2. pg_stat_activity - как да видите текущата активност в работеща съхранена процедура

  3. Защо postgres не създава базата данни?

  4. to_sql + sqlalchemy + копиране от + postgresql двигател?

  5. Как да разделите таблица на postgres с помощта на междинна таблица