【问题标题】:PHP MySQL Query Multiple Categories on a Single QueryPHP MySQL 在单个查询上查询多个类别
【发布时间】:2013-01-15 20:43:25
【问题描述】:

我有一个对工具页面的链接进行分类的应用程序。在此页面上,我希望有多个类别以及这些类别下的每个工具。由于我将拥有 13 个类别(随着工具的使用会更多),我不想为每个类别运行查询。我宁愿运行一个查询来获取所有数据。

现在我已经设置了页面,以便它显示每个类别并带有一个下拉菜单以查看工具。我需要做的是拥有它,以便只显示该类别的工具。我在解决如何从单个查询中处理所有这些数据时遇到问题。

目前我正在使用 while 语句将结果作为数组运行。

while($tools = $result->fetch_assoc()){
    if($tools['id'] = 1){
        echo $tools['name'];
    }
}

这只是我目前计划做的一个基本模型。我忍不住想,但是有更好的方法来解决这个问题。从 MySQL 中获取大量数据然后使用 PHP 将其分解为类别的最佳方法是什么?如果我需要运行多个查询,那很好,但我不想为每个类别运行查询。

【问题讨论】:

标签: php mysql mysqli


【解决方案1】:

如果你没有性能问题,你可以像这样使用 GROUP_CONCAT 函数,

SELECT id,GROUP_CONCAT(name)
FROM tools
GROUP BY id

你可以从mysql官网here阅读更多关于GROUP_CONCAT的内容

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    • 2014-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-04
    • 1970-01-01
    相关资源
    最近更新 更多