Mysql - 如何检索NVP值并对它们进行分组?

问题描述:

比方说,我们有这个MySQL表Mysql - 如何检索NVP值并对它们进行分组?

name  value 
author  Sabriel Armstrong 
author  Peter Abhorsen 
author  Garth Stein 
item  bell 
item  book 
item  sword 
item  wand 

鉴于这些数据库条目,有没有办法来检索这个值来获得它下面的格式?或者是我的数据库建模错误?

array(
    [author] => array(Sabriel Armstrong,Peter Abhorsen, Garth Stein), 
    [item] => array(bell,book,sword, wand) 
) 

MySQL没有数组,所以很难弄清楚你期望的确切结果集。无论如何,您的数据库设计无法将作者与项目进行匹配:这些信息根本不存储在任何地方。

我想你就会有一个理由,以避免这一点:

author   item 
======   ====== 
Sabriel Armstrong bell 
Peter Abhorsen book 

: - ?

+0

我不能仅仅把它作为一个专栏的原因是字段“名称”和“值”是任意的,可以改变。 – arvinsim 2011-01-29 04:44:32