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. MariaDBとは何ですか? MariaDBはどのように機能しますか?

    2. SQL ComplianceManager5.9の一般提供の発表

    3. 重要な日付のデータモデル

    4. MYSQL:LONG文字列変数を定義または取得する方法