Mysql操作使用入口-属性-值模型.的帮助


mysql manipulation using entry-attribute-value model .. help

祝大家……我有以下mysql结构(在线商店),其中submenu@2表示该产品的子类别…标签子菜单id 2…因此,我将基于分组的特定产品类别的属性逐行存储:

attribute`s table :
(id, subcategory_id, group, name, link, location)
(1, submenu@2, display, Size, 0, 0)
(2, submenu@2, display, Colors, 0, 0)
(3, submenu@2, display, Display type, 0, 0)
(4, submenu@2, display, Contrast, 0, 0)
(5, submenu@2, conectivity, VGA, 0, 0)
(6, submenu@2, conectivity, HDMI, 0, 0)
(7, submenu@2, conectivity, DSUB, 0, 0)

我想要的是在单个表行(<tr><td></td></tr>)中显示这个(管理面板),像这样:

<tr>
<td>submenu@2</td>  
<td>display</td>
<td>Size - Colors - Display Type - Contrast</td>
</tr>
<tr>
<td>submenu@2</td>
<td>conectivity</td>
<td>VGA - HDMI - DSUB</td>
</tr>

同一产品的表行按组分开。我花了3个小时思考如何做到这一点,但我毫无头绪…也许一个不同的mysql查询会做到这一点(现在我正在做一个select * from table_name,并认为使用php if会做到这一点…但没有成功)

使用mysql的group concat函数(http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat)

SELECT GROUP_CONCAT(name, " - ") FROM attributes GROUP BY group

这对你有用吗?