2012-01-24 62 views
-2

我有兩個表。一個具有訂單ID的訂單信息,另一個具有訂單詳細信息。 order_details對每個order_id都有多行。我想要一個查詢來提取訂單信息,然後爲order_details表上的每個條目添加一個「列」。MySQL兩列成列

這可能嗎?如果是這樣,怎麼樣?

+0

困惑,這是爲什麼全部在兩張桌子裏。是不是「信息」和「細節」同義詞?你可以將它們組合起來嗎?還要爲每個條目添加一列來混淆你的意思?在HTML中?細節表的設置是什麼? – bowlerae

+0

這可能嗎?幾乎肯定,是的。怎麼樣?你告訴我們 - 如果不知道數據庫中的列和你想要返回的內容,我們就無法給你一個查詢。問一個更精確的問題,我相信人們會很樂意幫助你。 – Hecksa

+0

我正在做什麼@gahooa建議如下。如果有人知道更好的方法,我會非常感激。 – nathangiesbrecht

回答

1

這是不可能在MySQL中,或我知道的任何SQL,異常高度硬編碼查詢與過多的連接或子查詢。

這種類型的問題通常被歸入編程語言領域。如果你有一個臨時需要查詢要做到這一點,那麼這樣的事情會做(你將不得不引用關鍵字order

SQL例如:

SELECT 
    order_id, 
    date, 
    (select amt from order_detail where order_id=order.order_id and detail_line=1), 
    (select amt from order_detail where order_id=order.order_id and detail_line=2), 
    (select amt from order_detail where order_id=order.order_id and detail_line=3), 
    (select amt from order_detail where order_id=order.order_id and detail_line=4), 
FROM 
    order 
WHERE 
    order_id = 1234 
+0

這就是我正在做的,但我希望有一些「更漂亮」。但如果這是不可能的,我想這是不可能的。謝謝! – nathangiesbrecht