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

2つのselectステートメントを結合する

    何をしようとしているのかわかりませんが、2つのselect句があります。代わりにこれを行ってください:

    SELECT * 
    FROM ( SELECT * 
           FROM orders_products 
           INNER JOIN orders ON orders_products.orders_id = orders.orders_id 
           WHERE products_id = 181) AS A
    JOIN ( SELECT * 
           FROM orders_products 
           INNER JOIN orders ON orders_products.orders_id = orders.orders_id
           WHERE products_id = 180) AS B
    
    ON A.orders_id=B.orders_id
    

    更新:

    おそらく次のように減らすことができます:

    SELECT o.orders_id, 
           op1.products_id, 
           op1.quantity, 
           op2.products_id, 
           op2.quantity
    FROM orders o
    INNER JOIN orders_products op1 on o.orders_id = op1.orders_id  
    INNER JOIN orders_products op2 on o.orders_id = op2.orders_id  
    WHERE op1.products_id = 180
    AND op2.products_id = 181
    


    1. WhileループからPHP配列にデータを入力します

    2. Asind()がPostgreSQLでどのように機能するか

    3. カンマ区切りのリストとしてのMySQLの結果

    4. トランザクションログの監視