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

一貫性のない転置

    共通テーブル式を使用して、各購入者にサプライヤ内で注文を与えてから、通常のケースを実行してそれらを列に配置することができます。

    WITH cte AS (
      SELECT supplier, buyer, 
        ROW_NUMBER() OVER (PARTITION BY supplier ORDER BY buyer) rn
      FROM Table1
    )
    SELECT supplier, 
           MAX(CASE WHEN rn=1 THEN buyer END) buyer1,
           MAX(CASE WHEN rn=2 THEN buyer END) buyer2,
           MAX(CASE WHEN rn=3 THEN buyer END) buyer3
    FROM cte
    GROUP BY supplier;
    

    テストするSQLfiddle



    1. 投稿データを使用してセッションを設定する

    2. SequelProを使用してデータベースに接続する方法

    3. gem install:gemネイティブ拡張のビルドに失敗しました(ヘッダーファイルが見つかりません)

    4. ピボットモデルでのLaravelの関係