PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Padat_rank Oracle pertama ke Postgresql mengonversi

Saya pikir Anda dapat mengonversinya menjadi satu DENSE_RANK() dan lakukan MAX dari semua pada catatan pertama.

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. Kolom Postgres tidak ada

  2. Alternatif dinamis untuk pivot dengan CASE dan GROUP BY

  3. Apakah Anda mengamati penurunan kinerja TEMP TABLE PostgreSQL sejak 8.3?

  4. bagaimana cara mengumpulkan banyak nilai sebagai string tunggal di postgres?

  5. Menginstal PostgreSQL di OSX untuk pengembangan Rails