当前位置: 首页 > news >正文

网站开发网站建设公司网站如何上传

网站开发网站建设公司,网站如何上传,最便宜的货源网站大全,石河子网站建设公司PageHelper多表关联查询数量问题 通常我们会使用PageHelper进行分页查询#xff0c;但是当分页查询被用到多个表的关联查询中时#xff0c;就有可能导致查询出来的数据总数比我们想要的多得多。 首先在数据库中创建三个demo表#xff1a;role、path、role_path role角色表…PageHelper多表关联查询数量问题 通常我们会使用PageHelper进行分页查询但是当分页查询被用到多个表的关联查询中时就有可能导致查询出来的数据总数比我们想要的多得多。 首先在数据库中创建三个demo表role、path、role_path role角色表 SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS 0;-- ---------------------------- -- Table structure for role -- ---------------------------- DROP TABLE IF EXISTS role; CREATE TABLE role (id int(20) NOT NULL AUTO_INCREMENT,name varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY (id) USING BTREE ) ENGINE InnoDB AUTO_INCREMENT 8 CHARACTER SET utf8 COLLATE utf8_general_ci ROW_FORMAT Compact;-- ---------------------------- -- Records of role -- ---------------------------- INSERT INTO role VALUES (1, 管理员); INSERT INTO role VALUES (2, 竞赛负责人); INSERT INTO role VALUES (3, 教师); INSERT INTO role VALUES (4, 学生);SET FOREIGN_KEY_CHECKS 1;path路径表 SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS 0;-- ---------------------------- -- Table structure for path -- ---------------------------- DROP TABLE IF EXISTS path; CREATE TABLE path (id int(20) NOT NULL AUTO_INCREMENT,name varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,address varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY (id) USING BTREE ) ENGINE InnoDB AUTO_INCREMENT 9 CHARACTER SET utf8 COLLATE utf8_general_ci ROW_FORMAT Compact;-- ---------------------------- -- Records of path -- ---------------------------- INSERT INTO path VALUES (1, 学生管理, /stuMa); INSERT INTO path VALUES (2, 教师管理, /teaMa); INSERT INTO path VALUES (3, 队伍管理, /teamMa); INSERT INTO path VALUES (4, 项目管理, /proMa);SET FOREIGN_KEY_CHECKS 1;role_path角色路径关系表 SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS 0;-- ---------------------------- -- Table structure for role_path -- ---------------------------- DROP TABLE IF EXISTS role_path; CREATE TABLE role_path (role_id int(20) NULL DEFAULT NULL,path_id int(20) NULL DEFAULT NULL ) ENGINE InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci ROW_FORMAT Compact;-- ---------------------------- -- Records of role_path -- ---------------------------- INSERT INTO role_path VALUES (1, 1); INSERT INTO role_path VALUES (1, 2); INSERT INTO role_path VALUES (1, 3); INSERT INTO role_path VALUES (1, 4); INSERT INTO role_path VALUES (2, 4); INSERT INTO role_path VALUES (3, 3); INSERT INTO role_path VALUES (3, 4); INSERT INTO role_path VALUES (4, 3);SET FOREIGN_KEY_CHECKS 1;在多表关联查询中使用PageHelper的原因 想获取多个表中的数据 假设我们想要查询角色所对应的路径的名称有哪些此时就会进行多表关联查询 SELECTrole.NAME,res.NAME pathName FROMroleINNER JOIN ( SELECT role_path.role_id, path.NAME FROM role_path INNER JOIN path ON role_path.path_id path.id ) res ON res.role_id role.id查询结果 正常情况下我们通过mybatis的封装就可以将查询到的数据封装在4个角色对象当中但是如果我们还想使用PageHelper进行分页查询那么PageHelper给我们返回的数据总数total就会是8条这样很显然不是我们想要的数据。 解决方法 我们可以在数据库中将角色名称相同的数据进行合并并使用GROUP_CONCAT(属性名)将指定的属性进行拼接如果分组后的属性存在多个 SELECTrole.NAME,GROUP_CONCAT( res.NAME ) pathName FROMroleINNER JOIN ( SELECT role_path.role_id, path.NAME FROM role_path INNER JOIN path ON role_path.path_id path.id ) res ON res.role_id role.id GROUP BYrole.NAME查询结果 这样再使用PageHelper时返回的total仍然是4个并且在数据库中直接将我们想要的数据进行了整合。 想在多个表中进行条件查询 如果我们想要获取有队伍管理权限的角色拥有的权限信息此时也是需要进行多表查询
http://www.sadfv.cn/news/174326/

相关文章:

  • 湖南二维码标签报价江门网站优化快速排名
  • gis网站开发教程上海企业网上公示官网
  • 迪奥官网网站做的好吗wordpress 加视频
  • 网页设计与网站建设教材如何做网站容易收录
  • 广州大型网站制作公司美术馆网站建设概述
  • ui设计做网站查看网站主机
  • 响应式瀑布流网站程序临沂 网站建设
  • 微信网站小游戏南京网站建设多少钱
  • 网站建设方案书是什么淘宝网站详情页怎么做
  • 网站托管服务适用于赣州人才市场最新招聘信息
  • 苏州做公司网站附近有没有学电脑的培训机构
  • 网站开发有哪些竞赛ppt模板免费下载千图网
  • 企业外贸网站app软件一键生成工具
  • 上海网站建设润滋wordpress评论是关闭还是开启
  • 湖北 商城网站建设sempre音乐术语
  • 网站开发自我介绍WordPress商务网站
  • 沧州建设银行招聘网站抚顺市营商环境建设局网站
  • 网站模版防被偷教学平台网站建设合同
  • 怎么做网站的网盘书店网站模板
  • python做网站方便吗旗袍网站架构
  • 往网站上做新东西需要什么上海cms网站建设
  • 鹤岗市城乡建设局网站小县城做房地产网站
  • 贵阳市建设厅官方网站网站建设里怎么写文章
  • 电商网站页面设计免费下载图片的网站有哪些
  • 那些网站可以做团购安徽省住房和城乡建设厅官网网站
  • 专业的seo网站优化公司吉林城市建设学校网站
  • 高端网站设计公司如何设计网站关于旅游网站开发的研究方法
  • 沧州网站建设刘磊微信公众号运营方案
  • 泉州建设网站的公司微信小程序怎么关闭游戏
  • 网站的导航栏怎么做的做网站的工具怎么使用