
MySQL
文章平均质量分 60
MySQL
小小渔夫
我只是一粒灰尘,呼吸着神圣的气息,是你使我转向你。
展开
-
MySQL使用Not in查询效率慢的优化
问题复盘,在查询某个数据不在另一个表中,查询时间非常慢,10几秒。究其原因not in不走索引。那么怎么解决优化呢,下面是简单记录。原创 2023-12-13 09:44:34 · 3936 阅读 · 0 评论 -
MySQL踩坑之sql_mode的用法
什么是sql_mode?玩了这么久的MySQL语句,还是第一次听说sql_mode,还是自己太菜了:)概念:简单来说,sql_mode是一组mysql的语法校验规则,定义了mysql应该支持的sql语法、数据校验等。原创 2023-08-01 14:08:46 · 512 阅读 · 0 评论 -
MySQL查询数据库、表以及表行数所占内存大小
在开发中我们想知道某个数据库,或者某个数据表的内存大小,那么怎么查询呢?下面通过简单示例一一介绍,希望对您有所帮助。原创 2023-07-14 14:19:37 · 2216 阅读 · 0 评论 -
MySQL使用空间函数查询地理位置
使用MySQL空间函数查询经纬度信息。原创 2022-10-14 18:12:19 · 1293 阅读 · 0 评论 -
MySQL查询时最后一行添加合计值
目录前言知识点实现方法栗子及实现简单建个表SQL实现结果展示前言假使我们要统计当月每天的销售额,同时要对查询数据进行合计。比如下图,我虽然查询出来了数据,如何在最后一行添加合计值呢。知识点WITH ROLLUP:WITH POLLUP关键字用来在所有记录的最后加上一条记录,这条记录是上面所有记录的总和,即统计记录数量。也就是在group分组字段的基础上再进行统计数据。使用:GROUP BY 分组与 WITH ROLLUP使用实现方法...原创 2022-03-23 16:16:00 · 4875 阅读 · 0 评论 -
MySQL分库分表
分库分表MySQL存放超过几百万条数据后就有了性能问题互连网应用:大多都是读多写少垂直拆分垂直分库将一个数据库按照业务分类拆分为多个数据库。比如订单的、会员的、商品的、用户的、后台的垂直分表有的业务场景下不需要用户的所有信息,不需要查询所有字段将用户的部分信息拆分出来到子表中总结每个库(表)的结构都不一样 每个库(表)的数据都(至少有一列,通常是记录 id)一样 每个库(表)的并集是全量数据。因为是从原来的库(表)进行拆分的,同理也可以合为转载 2022-03-02 15:06:07 · 346 阅读 · 0 评论 -
MyISAM和InnoDB的区别
比较类别 MyISAM InnoDB 事务 不支持,强调的是性能,查询速度比 InnoDB 快 支持,强调的是保持数据一致性的高级功能 外键 不支持 支持 索引 使用非聚集索引,索引文件和数据文件分开存储,索引中保存的是数据文件的指针 使用聚集索引,索引文件和数据文件绑定 锁 支持表级锁,用户在执行 insert、update、select、delete 时都会给表自动加锁,效率低 支持表级锁、行级锁; 行级锁粒度小,处理并发原创 2022-02-16 11:26:24 · 259 阅读 · 0 评论 -
MySQL存储过程优化思路
场景这是原来的存储过程,每次跑批的时候,循环插入数据,导致存储过程运行时间少则半小时,多则一个小时,甚至于造成锁表。OPEN cur; read_loop:LOOP FETCH cur INTO i; set @ss=select XXXXX;insert into `hqk`(XX) values(XX) valuesEND LOOP; CLOSE cur;分析对于原来的这个存储过程,循环insert肯定造成存储过程时间运行过长,而且随着数据量的扩大,后期..原创 2022-02-15 18:01:24 · 1154 阅读 · 0 评论 -
MySQL中查询字段为汉字的集合
知识点MySQL length()函数:用于获取字符串的长度。MySQL char_length()函数:获取字符串长度。需要注意的是,不管汉字还是数字或者是字母或其他文字都算是一个字符方法SELECT * FROM table WHERE length(column)!=char_length(column);......原创 2021-09-02 14:49:24 · 2255 阅读 · 0 评论 -
MySQL索引的使用
索引MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。数据库索引好比是一本书前面的目录,能加快数据库的查询速度。创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。优缺点优点通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 可以大大加快 数据的检索速度,这也是创建索引的最主要的原因。 可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。 在使用分组和排...原创 2021-07-01 17:15:02 · 161 阅读 · 0 评论 -
MySQL分组查询(统计为空的分组默认为0)
0.知识点:MySQL CASE函数除了IF函数,MySQL还提供了一个替代的条件语句 CASE。 MySQL CASE 语句使代码更加可读和高效。CASE 语句有两种形式:简单的和可搜索 CASE 语句。1.简单的 CASE 语句语法CASE <表达式> WHEN <值1> THEN <操作> WHEN <值2> THEN <操作> ... ELSE <操作>END CASE;小栗原创 2021-06-23 15:34:57 · 3552 阅读 · 1 评论 -
MySQL查询某张表属于哪个数据库
SQL语句SELECT table_schema FROM information_schema.TABLES WHERE table_name = 'xxxx';说明在不清楚某张表属于哪个数据库时,可以直接使用上面的SQL语句,填入表名称信息即可查询。实例原创 2021-05-21 14:38:02 · 4979 阅读 · 2 评论 -
MySQL查询当天、昨天、近3天的数据
知识点函数 描述 CURDATE() 返回当前日期 CURRENT_TIME 返回当前时间 DATEDIFF(d1,d2) 计算日期 d1->d2 之间相隔的天数 DATE_SUB(date,INTERVAL expr type) 函数从日期减去指定的时间间隔。 DATE_FORMAT(d,f) 按表达式 f的要求显示日期 d TO_DAYS(d) 计算日期 d 距离 0000 年 1 月 1 日的天数 YEAR(d) 返原创 2020-11-16 16:16:51 · 8245 阅读 · 0 评论 -
MySQL优化技巧【持续更新】
前言应用程序或web网页有时慢的像蜗牛爬似的,可能是网络原因,可能是系统架构原因,还有可能是数据库原因。那么如何提高数据库SQL语句执行速度呢?下面是积累的一些优化技巧,望对君有用。正文1、比较运算符能用 “=”就不用“<>”//“=”增加了索引的使用几率。2、明知只有一条查询结果,那请使用 “LIMIT 1”“LIMIT 1”可以避免全表扫描,找到对应结果就不...原创 2019-04-09 14:13:34 · 166 阅读 · 0 评论 -
MySQL常用查询语句积累
>>MySQL某列插入递增值SET @i := 100; UPDATE auge_item_classification SET c_code=(@i:=(@i+1));>>MySQL查询重复记录SELECT id,count(id) count FROM x_table GROUP BY id HAVING count>1>>将一...原创 2018-05-04 17:31:20 · 225 阅读 · 0 评论