php - 如何根据名称/类别显示结果?

标签 php html mysql categories dynamic-queries

我有一个包含这些值的数据库。

+----+--------+-----------+
| id | value  | category  |
+----+--------+-----------+
|  1 | value1 | category1 |
|  2 | value2 | category1 |
|  3 | value3 | category2 |
|  4 | value4 | category3 |
+----+--------+-----------+

我希望输出是这样的:

Category1: 
value1 
value2

Category2: 
value3

Category3: 
value4

我知道我可以使用 WHEREcategory=category1 .. 等,但是如何使脚本自动对所有值进行分组并以这种方式显示它们?

最佳答案

使用函数GROUP_CONCAT()获取逗号分隔的值列表,并使用GROUP BY子句收集每个类别的值:

SELECT
    `category`,
    GROUP_CONCAT(`value`) as `values`
FROM `tablename`
GROUP BY `category`
ORDER BY `category`

关于php - 如何根据名称/类别显示结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56840666/

相关文章:

php - 在 xampp 中更新 ICU 扩展?

php - 如何计算数据库中单行内的点赞数和中立数?

html - Bootstrap Carousel 和 <img> 标签与 object-fit & object-position 不工作

mysql - Excel-Vba 连接 Mysql localhost 失败

php - 使用 OOP 在 PHP 中组合大量函数(某种 namespace )?

php - 如何检查数据库中的多行

javascript - 在文本字段中显示按钮的值

css - 带有文本段落左右 Angular 形状的框,带有 css

php - 如何通过简单的代码使 PHP 输入法(get 和 post)安全?

MySQL 和日期时间