需要在mysql中输出此查询

时间:2014-06-23 06:21:47

标签: mysql

我有一些包含一些列的表格,这里是表格结构

book_id book_name book_cat_id book_pub_id book_price
1           A       cat-1        p-1         100
2           B       cat-2        p-2         150
3           C       cat-3        p-3         452
4           D       cat-4        p-4         452
5           E       cat-1        p-3         620
6           F       cat-2        p-4         300
7           G       cat-3        p-1         750
8           H       cat-4        p-2         125

我想要这样的输出

book_pub_id      book_cat_id
     p-1          cat-1,cat-3
     p-2          cat-2,cat-4
     p-3          cat-3,cat-1
     p-4          cat-4,cat-2

3 个答案:

答案 0 :(得分:1)

您可以使用GROUP_CONCAT()

SELECT book_pub_id, GROUP_CONCAT(book_cat_id) book_cat_id
FROM tablename
GROUP BY book_pub_id;

答案 1 :(得分:0)

试试这个

SELECT book_pub_id, GROUP_CONCAT(book_cat_id) book_cat_id
FROM Table1
GROUP BY book_pub_id

GROUP_CONCAT

答案 2 :(得分:0)

为此您可以使用MySQl的GROUP_CONCAT()函数,生成的查询同样为

SELECT book_pub_id, GROUP_CONCAT(book_cat_id) book_cat_id
FROM Table
GROUP BY book_pub_id