sql >> データベース >  >> RDS >> Oracle

SQL参加の質問

    Analytics(最新バージョンのOracleを使用している場合)とピボットテーブルを組み合わせて使用​​できます。これはデータセットで機能するはずです。

    select ndc,
           max(decode(rn, 1, rx_num, null)) rx1,
           max(decode(rn, 2, rx_num, null)) rx2,
           max(decode(rn, 3, rx_num, null)) rx3,
           max(decode(rn, 4, rx_num, null)) rx4
      from (select *
              from (select claims_list.ndc,
                           claims_list.rx_num,
                           row_number() over (partition by claims_list.ndc order by claims_list.date desc) rn
                      from claims_list,
                           (select * 
                              from (select *
                                      from drug_list
                                     where type = 'Generic'
                                    order by qty desc
                                   )
                             where rownum < 51
                           ) drug_list
                     where drug_list.ndc = claims_list.ndc
                   )
             where rn < 5
            order by ndc, rn
           )
    group by ndc;
    

    内部クエリは、分析を使用して、請求日に基づいて各薬剤の最新の4つのrx番号を取得します。次に、ピボットを使用して、薬剤ごとに4行から4列の1行に変更します。



    1. PowerShellを使用してパラメーターのデフォルト値を解析する–パート1

    2. Oracle Convert Seconds to Hours:Minutes:Seconds

    3. SQL Serverで「smalldatetime」を「datetime」に変換する(T-SQLの例)

    4. MySQLでスラッシュ(\)を検索する方法は?そして、なぜエスケープ(\)は、where(=)ではなく、Likeが必要なのですか?