2013-12-10 40 views
0

我想,在一個查詢選擇訂單,並附上他們的項目(現在我選擇的訂單,然後使用單獨的查詢選擇order_items - 這是證明了大量的訂單很慢...MySQL查詢 - 在結果中產生數組

訂單:ID |名稱|總

ORDER_ITEMS:ID | ORDER_ID |價格|數量

order_items_info:id | order_id | order_item_id | tracking_no

我想要做的最後一件事是:將我的order_items_info表添加到項目數組。

$orders = array(
    array(
     'id' => '', 
     'name' => '', 
     'items' => array(
      array(
       'order_item_id' => '', 
       'price' => '', 
       'qty' => '', 
       'item_info' => array() 
      ), 
      array(
       'order_item_id' => '', 
       'price' => '', 
       'qty' => '', 
       'item_info' => array() 
      ), 
      ... 
     ) 
    ) 
); 
+1

這有什麼錯加入? –

+0

您的order_items表需要一個item_id字段,它可以連接到您的商品表。 –

+0

它有一個,但它使它變得有點複雜,所以我把它排除了。 – Wallter

回答

1
SELECT o.id,name,total,item_info,price,qty FROM orders o 
JOIN order_items oi ON o.id=oi.order_id 
JOIN order_items_info oii ON oii.order_id=o.id 
AND oii.order_item_id=oi.id 

只是胡亂猜測,直到您發佈的信息表。

+0

我忘了添加問題的第二部分:將order_items_info添加到items數組中? – Wallter

+0

我沒有看到您表格中任何地方的任何東西order_items_info。 – Mihai

+0

對不起,這有點令人困惑。我已經更新了它,讓它更有意義。 – Wallter

0

SELECT * FROM訂單加入對ORDER_ITEMS(orders.id = ORDER_ID)