sql查询:以逗号分隔的形式选择第二个表的多个值

时间:2017-09-25 06:33:27

标签: php mysql sql mysqli phpmyadmin

sql查询以逗号分隔的形式获取第二个表的多个值。两个表都由tbl 1 id连接。

tbl 1
   id  category
   1    cat 1
   2    cat 2

  tbl 2
  id   tbl_1_id subcategory    
  1     1        sub 1   
  2     1        sub 2 
  3     1        sub 3
  4     2        sub 4



query result expected
1    cat 1  sub 1,sub 2,sub 3,   
2    cat 2  sub 4   

1 个答案:

答案 0 :(得分:0)

在mYsql中你可以尝试这个(使用GROUP BY和GROUP_CONCAT函数)。 GROUP_CONCAT()使用相同的TABLE_1_ID和CATEGORY名称连接字段 - GROUP BY之后列出的字段 - 使用","作为分隔符。

SELECT A.TABLE_1_ID, B.CATEGORY, GROUP_CONCAT(A.SUBCATEGORY) AS SUBC
FROM SUBCATEGORIES A
INNER JOIN CATEGORIES B
GROUP BY A.TABLE_1_ID, B.CATEGORY;