我有一个像这样的mysql表:
+------+-------------+----------+
| id | name | category |
+------+-------------+----------+
| 1 | product 1 |category-A|
| 2 | product 2 |category-B|
| 3 | product 3 |category-C|
| 4 | product 4 |category-B|
| 5 | product 5 |category-C|
| 6 | product 6 |category-A|
| 7 | product 7 |category-A|
| 8 | product 8 |category-C|
| 9 | product 9 |category-B|
+------+-------------+----------+
有没有像这样返回的函数?
category-A,category-B,category-C
注意:稍后可能会添加新类别。
谢谢。
答案 0 :(得分:2)
SELECT GROUP_CONCAT(DISTINCT category ORDER BY category) FROM TableName
输出
╔══════════════════════════════════╗
║ RESULT ║
╠══════════════════════════════════╣
║ category-A,category-B,category-C ║
╚══════════════════════════════════╝
答案 1 :(得分:1)
在查询中使用DISTINCT
,它会消除重复条目
SELECT GROUP_CONCAT(DISTINCT category )
FROM your_table
答案 2 :(得分:0)
您只是在寻找所有类别的唯一列表吗?
SELECT DISTINCT category FROM mytable
答案 3 :(得分:0)
尝试
SELECT DISTINCT columnName FROM table_name
这应该为您提供包含该列中所有不同值的结果。