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

MySQL:同じテーブルを複数回結合するにはどうすればよいですか?

    複数のLEFT JOINsを使用する必要があります :

    SELECT 
        ticket.ticket_id,  
        a1.attr_val AS attr_val1,
        a2.attr_val AS attr_val2,
        a3.attr_val AS attr_val3
    FROM ticket
        LEFT JOIN attr a1 ON ticket.ticket_id=a1.ticket_id AND a1.attr_type=1
        LEFT JOIN attr a2 ON ticket.ticket_id=a2.ticket_id AND a2.attr_type=2
        LEFT JOIN attr a3 ON ticket.ticket_id=a3.ticket_id AND a3.attr_type=3
    

    次に例を示します。 SQL Fiddle 。



    1. SQLServerでネストされたcaseステートメントロジックを実行するための最良の方法

    2. 修正:Oracleデータベースの「間隔の主要な精度が小さすぎる」

    3. SQLServerでストアドプロシージャを暗号化する方法

    4. 主キーを無視してPostgreSQLで重複行を見つける7つの方法