2012-07-08 103 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; 
相关问题