2012-07-08 37 views
1

我正在使用現有的數據庫,並且我有一個問題,我知道你們SQL人可以指定。我有2個表格,有一個項目ID和一個描述,另一個存儲所有項目的元。將來自MYSQL數據庫的多行元信息合併爲一個響應

我的兩個表是這樣的....

items- 
---------------- 
id | description 
---------------- 

itemsmeta- 
----------------------------------------- 
itemmeta_id | item_id | fieldkey | value 
----------------------------------------- 

我需要做的是得到一個響應,希望爲基於給定項ID的對象或數組。所以我想說,基於特定的物品ID獲取所有元信息。

如果我做這樣的事情......

SELECT * FROM items LEFT JOIN itemsmeta ON itemsmeta.item_id = items.id WHERE items.id = 1 

返回約9行,一個爲項目的頭號每個元條目。是否有可能構建我的查詢返回一個響應?

也許是這樣的:

陣列([0] => stdClass的對象([ID] => 1 [名稱] =>等等等等[元1] =>等等等等[元2] =>布拉赫等等)?

+0

http://mahmudahsan.wordpress.com/2008/08/27/mysql-the-group_concat-function/這可能幫助 – Hardik 2012-07-08 18:42:15

回答

1

您可以使用GROUP_CONCAT功能

SELECT id, description, GROUP_CONCAT(value) 
FROM items 
LEFT JOIN itemsmeta ON items.id = itemsmeta.item_id 
GROUP BY item.id; 
相關問題