php - 当项目分配给子类别时如何按父类别对项目进行排序

标签 php mysql sql codeigniter

当项目分配给子类别时,我尝试按父类别对项目进行排序。

表格

sql.Categories id标题parent_id

sql.Classifieds id标题category_id

代码

public function getLatestClassifieldsByParentCategories()
    {
        $query = $this->db->query("SELECT * FROM categories WHERE parent_id = '0'");
        $result = $query->result();


        foreach ($result as $parent) 
        {   

            $return[$parent->id] = $parent;

            $parent_id = $parent->id;
            $query = $this->db->query("SELECT * FROM categories WHERE parent_id = '$parent_id'"); 

            foreach ($result as $category)
            {
                $return[$parent->id]->category = $category;
                $return[$parent->id]->classifields = $this->cflatest->getClassifieldsLastestByCategory($category->id);
            }      
        }

        return $return;
    }

我找到了另一种方法,效果很好

最佳答案

为什么不运行此查询?

SELECT * FROM classifieds JOIN categories ON classifieds.category_id = categories.id ORDER BY categories.title ASC

关于php - 当项目分配给子类别时如何按父类别对项目进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34501703/

相关文章:

MySQL 事务返回错误

mysql - 在单个表上的多个间隔上应用乘法

mysql - Rmysql查询没有返回正确的值?

php - UTF-8 字符无法正确显示

php - 带有 CodeIgniter 的 REST API

PHP/MySQL SELECT LIMITER 问题

php - 如何将参数传递给 Symfony2 Twig block ?

mysql - 尝试更新时 PHP 出现重复条目​​错误

sql - 有选择地减少数据库索引的策略

php - 一次执行多个 SQL 查询