MySQL连表操作和GROUP_CONCAT函数的使用

来源:互联网 发布:网络语言利弊百度知道 编辑:程序博客网 时间:2024/06/10 18:18

在开发网站的时候,数据库操作是必须,复杂的网站有时要涉及到几张表的同时操作。以下简单讲解一下多表查询和GROUP_CONCAT函数的使用。例如有三张表 jd_role:角色表,jd_role_privilege:角色权限id关联表,jd_privilege:权限表,三张表的结构如下:


1、要求查询每个角色拥有的权限:

使用left join左外连进行连表操作:


此时,就可以查询出每个角色拥有哪些权限,但是这样查询不是很符合实际开发,比如说在修改角色权限的时候,如何把一个角色的权限放入下拉选择框中,这需要把一个角色拥有的所有的权限转换成字符串或者数组,这时候可以使用GROUP_CONCAT函数:



2、以id分组,把权限名称打印成一行,用分号隔开:



3、以id分组,把权限名称打印成一行,去除重复字段:



4、以id分组,把权限名称打印成一行,用逗号隔开,根据权限id排序:

原创粉丝点击