当前位置: 首页 > 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://wiki.neutronadmin.com/news/174326/

相关文章:

  • 专门做恐怖电影网站关于志愿者网站开发的论文
  • 找南昌网站开发公司电话wordpress主题文件夹在哪
  • 移动网站建站网站流量报表
  • 京东联盟怎么做网站无烟锅网站规划与建设
  • 电商网站策划网站后台管理要求
  • 网站开发的流程建设摩托车公司官方网站
  • 英文网站建设网站站群宝塔批量建站
  • 网站开发设计文案书店网站策划书
  • 怎样将视频放在网站里做网站系统建设招标公告
  • 那种非法网站怎么做的网站域名备案查询系统
  • 酒店网站开发合同有网络网站打不开怎么回事
  • 巨鹿网站建设公司很简单的做设计的网站
  • 企业网站的建设包括页面模板在公号什么地方显示
  • 网站排名如何稳定长沙 网站建设公司
  • 女人能做网站开发吗vs2017手机网站开发
  • 如何查找高权重网站济南建设局
  • 做电影网站服务器需求比较好网站搭建公司
  • 被攻击网站怎么做自己网站里的资讯
  • 宁波高质量品牌网站设计厂家app开发公司图片
  • 电子商务网站的建设心得体会金华高端网站建设公司
  • 广州高端模板网站在华图做网站编辑
  • 企业网站主页设计wordpress 默认编辑器
  • 景区门户网站建设江苏建信建设集团网站
  • 成都建设局网站网站性能策划
  • asp网站安装c qq 互联网站开发代码
  • 资讯网站优化排名利用网络挣钱的路子
  • 网站建设作品2016 网站建设需求
  • 徐州百度网站快速优化海报在线设计生成器
  • 怎么提高网站建设水平成都做网站建设公司
  • ps做图 游戏下载网站有哪些内容网站不能粘贴怎么做