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

in和like性能对比

场景:

有个问题表,有个渠道表,问题和渠道的关系是一对多

需要根据渠道查询问题,暂时两种思路

1:问题表荣誉渠道id,多个id拼接

2:设计问题和渠道关联关系表

首先,这两种是常用的设计思路,那么查询谁的速度快

问题表:造10w数据,渠道表造100条数据

结论

实测10次后,发现like耗时是in的1/300到1/50,换句话说就是like性能是in的50倍-300倍

代码

表结构

问题表

CREATE TABLE `q_question` (`id` varchar(32) NOT NULL COMMENT 'ID',`question_name` varchar(10) DEFAULT NULL COMMENT '问题',`channel_id` varchar(10000) DEFAULT NULL COMMENT '渠道号',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`update_time` datetime DEFAULT NULL COMMENT '更新时间',`create_user` varchar(50) DEFAULT NULL COMMENT '创建人',`update_user` varchar(50) DEFAULT NULL COMMENT '更新人',`del_flag` int(10) DEFAULT NULL COMMENT '是否删除(1:是,0:否)',`create_user_name` varchar(255) DEFAULT NULL,`update_user_name` datetime DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='问题表';

渠道表

CREATE TABLE `q_channel` (`id` varchar(32) NOT NULL COMMENT 'ID',`channel_name` varchar(10) DEFAULT NULL COMMENT '问题',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`update_time` datetime DEFAULT NULL COMMENT '更新时间',`create_user` varchar(50) DEFAULT NULL COMMENT '创建人',`update_user` varchar(50) DEFAULT NULL COMMENT '更新人',`del_flag` int(10) DEFAULT NULL COMMENT '是否删除(1:是,0:否)',`create_user_name` varchar(255) DEFAULT NULL,`update_user_name` datetime DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='渠道表';

问题和渠道中间表

CREATE TABLE `q_question_channel` (`id` varchar(32) NOT NULL COMMENT 'ID',`question_id` varchar(32) DEFAULT NULL COMMENT '问题',`channel_id` varchar(10000) DEFAULT NULL COMMENT '渠道号',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`update_time` datetime DEFAULT NULL COMMENT '更新时间',`create_user` varchar(50) DEFAULT NULL COMMENT '创建人',`update_user` varchar(50) DEFAULT NULL COMMENT '更新人',`del_flag` int(10) DEFAULT NULL COMMENT '是否删除(1:是,0:否)',`create_user_name` varchar(255) DEFAULT NULL,`update_user_name` datetime DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='问题-渠道关系表';

http://www.lryc.cn/news/447358.html

相关文章:

  • Redis|基础学习
  • 手把手教你在Linux上构建Electron
  • 力扣【448-消失的数字】【数组-C语言】
  • 面试题:排序算法的稳定性?(文末有福利)
  • 在Jdk1.8中Collectors和Comparator使用场景
  • linux-性能优化命令
  • 基于MT79815G CPE 板子上挂usb3.0的5G 模块,WIFI能跑多少速度呢
  • R包compareGroups详细用法
  • 如何选择高品质SD卡
  • C++学习:模拟priority_queue
  • 同程旅行对标拼多多:“形似神不似”
  • HOJ网站开启https访问 申请免费SSL证书 部署证书详细操作指南
  • 程序设计基础I-实验4 循环结构之for语句
  • 深入工作流调度的内核
  • vue3中动态引入组件并渲染组件
  • 【艾思科蓝】网络安全的隐秘战场:构筑数字世界的铜墙铁壁
  • 将图片资源保存到服务器的盘符中
  • 数学建模练习小题目
  • 不可错过的10款文件加密软件,企业电脑加密文件哪个软件好用
  • 常用卫星学习
  • 音视频入门基础:FLV专题(3)——FLV header简介
  • python中数据处理库,机器学习库以及自动化与爬虫
  • 2024最新测评:低代码平台在企业复杂应用场景的适用性如何?
  • URL中 / 作为字符串,而不是路径。
  • el-input只能输入指定范围的数字
  • 数据结构编程实践20讲(Python版)—01数组
  • 数据库实验2—1
  • 现代前端框架实战指南:React、Vue.js、Angular核心概念与应用
  • MySQL --用户管理
  • 详解前驱图与PV操作