dqoag62688 2015-02-26 05:58
浏览 37
已采纳

我想在一个mysql查询中获得第n级的类别和子类别的层次结构

i want to get Hierarchical structure of category and subcategory for nth level in one mysql query i try some solution but it's not work properly. i try following query but it only get only subcategory but, i want it for nth level from one table like

category|subcategory|sub-subcategory|......

my table is fd_category and it's field is

id|name|parent_id FK -> fd_category.id  



 select c.id
      , c.name
      , group_concat(sc.name) as subcategory 
  from fd_category c 
  join fd_category sc 
   on c.id=sc.parent_id 
 where c.parent_id=null 
 group 
   by sc.parent_id;
  • 写回答

1条回答 默认 最新

  • dongwuying0221 2015-02-27 07:05
    关注

    public function get_menu() {
           $this->db->select('id,name,parent_id');
            $menu = $this->db->get('category')->result_array();
            $data=$this->menu_child($menu);
            //print_r($data);        
            return $data;
        } 
    function menu_child($menu, $parent = NULL) {
           $main_menu = array_filter($menu, function($a)use($parent) {
                       return $a['parent_id'] == $parent;
                   });
           if ($main_menu) {
               foreach ($main_menu as $key => $value) {
                   $main_menu[$key]['sub_menu'] = $this->menu_child($menu, $value['id']);
               }
           }
           return $main_menu;
        }  

    </div>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?