关联两个表(权限表特殊)

public function lst(){
      $role=D('role');
      $count = $role->count();// 查询满足要求的总记录数
      $Page = new \Think\Page($count,2);// 实例化分页类 传入总记录数和每页显示的记录数(25)
      $show = $Page->show();// 分页显示输出
      $list = $role->field('a.*,GROUP_CONCAT(b.priname) priname')->alias('a')->join('LEFT JOIN cs_privilege b ON FIND_IN_SET(b.id,a.role_list_id)')->limit($Page->firstRow.','.$Page->listRows)->group('a.id')->select();
      $this->assign('list',$list);
      $this->assign('page',$show);
      $this->display();
    }


<td>{$vo.priname}</td>



<td>{$vo.role_list_id}</td>




关联两个表,这个和视图模型不一样。

mysql 语句:

由这几张图应该能了解我的意图,关联

选贼所有从cs_role这个表,起一个名字a,关联cs_privilege这个表起个名字b,

FIND_IN_SET函数是b.id这格字段里面的数,是否在a.role_LIST_ID这个字段里面,关联


但是我们不需要所哟肚饿数据,只需要b.priname这个字段


GROUP_CONCAT函数返回一个字符串结果,该结果由分组中的值连接组合而成

这儿不会写,只能照抄代码



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值