MySQL(客户订购)

时间:2011-12-10 10:55:58

标签: php mysql

我正在使用php,mysql,我想做的确切 this链接说。

在w3schools的例子中,它打印出来:

   NAME                  ORDER NO. 
Ola Hansen                22245 
Ola Hansen                47475
Ola Hansen                45854

但我需要:

   NAME                  ORDER NO.
Ola Hansen          22245, 47475, 45854

它与PHP上的数据操作有关,还是我需要在查询上进行更改....?

提前致谢,

尼基

3 个答案:

答案 0 :(得分:2)

尝试GROUP_CONCAT

SELECT
    `NAME`,
    GROUP_CONCAT(CAST(`ORDER NO.` AS CHAR) SEPARATOR ', ') AS `ORDER NO.`
FROM
(
    -- your query
) AS T1
GROUP BY `NAME`

答案 1 :(得分:2)

这两种方式都是可能的。

你可以在mysql中使用group_concat()(当然还有GROUP BY)。但请记住,此函数返回的数据的默认大小仅为1024字节。

或者你可以用PHP中的数据操作来做 - 有时它会更灵活

答案 2 :(得分:0)

  

它与PHP上的数据操作有关

是的,这是最好的方式。