我在MySQL中有一个包含group_id
和name
列的表(该表有多个用户使用group_id
分组。)。
我想使用名称分组在html表中显示这些用户。
我使用了以下MySQL查询,但它没有完成这项工作。
SELECT
*
FROM `teams`
WHERE 1
GROUP BY
group_id
如何使用PHP和MySQL获取输出?
答案 0 :(得分:0)
您应该使用group_concat作为查询
SELECT group_id, GROUP_CONCAT(name)
from teams
group by group_id;
答案 1 :(得分:0)
使用GROUP_CONCAT()
功能:
SELECT
group_id,
GROUP_CONCAT(`name`) AS teams
FROM
teams
GROUP BY
group_id
答案 2 :(得分:0)
尝试以下SQL查询
csv.DictReader
答案 3 :(得分:0)
在上面的例子中使用GROUP_CONCAT(name)
并且你得到了你的查询时,你可以在php中执行以下操作来循环搜索结果。
选择强> 的 GROUP_ID 下, group_concat(名称)AS 团队 FROM your_table GROUP BY 的 GROUP_ID 强>
$html = [];
foreach ($results as $row) {
$html []= "<div>";
$html []= "GROUP ID:" . $row['group_id'];
$html []= "TEAM:" . $row['team'];
$html []= "</div>";
}
echo join("", $html);
注意: 我在这里使用的是 $ html 数组,因为它可以更大的内存效率来大规模使用数组字符串连接比使用。= 字符串运算符。