mysql
文章平均质量分 73
69岁的老程序员
这个作者很懒,什么都没留下…
展开
-
mysql优化之IN和ORDER BY导致索引失效
两条sql语句selectt1。*fromt_alarm_notice_all t1wheretaskId IN( select taskId from t_task_user where userId = 999)order byt1.latm desclimit 10selectt1。*fromt_alarm_notice_all t1wheretaskId IN( '777')order byt1.latm desclimit 10原创 2021-01-19 22:14:48 · 2573 阅读 · 0 评论 -
mysql利用bin-log恢复数据
my.cnf 配置开启bin-logroot@ba586179fe4b:/# vi /etc/my.cnf[mysqld]# 开启二进制日志功能,mysql-bin 是日志的基本名或前缀名log-bin=mysql-bin查看是否开启了bin-logMySQL [(none)]> show variables like 'log_%';+----------------------------------------+-----------------------------+.原创 2021-01-17 00:12:50 · 735 阅读 · 0 评论 -
mysql优化之如何用复合索引将查询从15秒达到0.025秒
业务场景:任务命中记录列表需要显示每个任务的最新命中时间命中记录表CREATE TABLE `t_alarm_notice_all` ( `id` varchar(32) NOT NULL, `taskId` varchar(125) , `alarmType` smallint(4) DEFAULT NULL , `objectId` varchar(125) DEFAULT NULL , `idCard` varchar(18) DEFAULT NULL , `name` v原创 2021-01-15 14:36:55 · 184 阅读 · 0 评论 -
mysql优化之为什么我limit10也会全表扫描
mysql索引选择问题命中表 A , 推送表B。收到一条命中记录之后往命中表中插入一条记录,并且往订阅了这条任务的所有用户发送数据,发送后往推送表中插入一条数据。 所以 A 和 B 的关系是一对多的关系。现在需要查看历史命中记录,sql语句为select t1.*fromtable_a t1,table_b t2wheret1.id = t2.noticeIdORDER BY t1.time desclimit 10其中A表大概有14W条数据,B表大概15W条数据。 (测试环境单原创 2021-01-14 15:25:37 · 3666 阅读 · 0 评论 -
myqsl 索引失效实战
建表sqlCREATE TABLE staffs(id INT PRIMARY KEY AUTO_INCREMENT,`name` VARCHAR(24)NOT NULL DEFAULT'' COMMENT'姓名',`age` INT NOT NULL DEFAULT 0 COMMENT'年龄',`pos` VARCHAR(20) NOT NULL DEFAULT'' COMMENT'职位',`add_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMEST原创 2020-12-26 21:19:08 · 116 阅读 · 0 评论 -
Mysql explain命令详解
id1.1 id 相同. 执行顺序从上至下1.2 id 不同 谁的id大谁先执行1.3 id又有相同又有不同 id 相同可认为一组,从上往下,不同id的组越大的越先执行需要遵循小表驱动大表select_type2.1 simple 简单的select 查询,查询中不包含子查询或者union2.2 primary2.3 subquery2.4 derived2.5 union2.6 union resulttablepartitionstypepossible_keyskey.原创 2020-12-22 22:28:26 · 130 阅读 · 0 评论 -
MYSQL 基础
基础查询显示表结构DESC table查询常量select 100;select ‘tom’查询表达式select 100+23;select 12*23;查询函数select version()+号的作用mysql 中 + 只有运算的功能。没有拼接字符串的功能。如果一方为字符,则尝试将字符转换为数值。转换成功,继续运算,转换失败则为0。 null 和任何东西相加都是nullconcat 链接字符concat(val1,val2) , 拼接多个字符IFNULL 函数IFNU原创 2020-11-29 14:10:20 · 98 阅读 · 0 评论