数据库
你好 9月!
这个作者很懒,什么都没留下…
展开
-
乐观锁两种使用方式
1.redis事务wactch监控2.mysql表中添加字段version 每增加一条数据版本为1之后每次修改都增加1原创 2021-06-29 21:29:25 · 270 阅读 · 0 评论 -
MySQL中的group_concat函数的使用
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) 。MySQL中group_concat函数完整的语法如下:group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator ‘分隔符’])基本查询mysql> select * from aa;±-----±-----+| id| name |±-----±-----+|1 | 10||1转载 2021-06-25 10:58:32 · 316 阅读 · 0 评论 -
mysql8.0版本更新内容
MySQL从5.7一跃直接到8.0,这其中的缘由,咱就不关心那么多了,有兴趣的朋友自行百度,本次的版本更新,在功能上主要有以下6点: 账户与安全 优化器索引 通用表表达式 窗口函数 InnoDB 增强 JSON 增强一、账户与安全1.用户的创建与授权 在MySQL5.7的版本: > grant all privileges on *.* to '用户名'@'主机' identified by '密码'; 在MySQL8.0需要分.转载 2021-01-26 14:13:10 · 1190 阅读 · 0 评论 -
mysql主从复制实现方式
主节点配置创建账号sql:CREATE USER ‘slave’@‘192.168.81.%’ IDENTIFIED WITH mysql_native_password BY ‘slave’;授权:GRANT REPLICATION SLAVE ON . TO ‘slave’@‘192.168.81.%’;启动进制日志功能:show global variables like ‘%log_bin%’;(查看)mysql> show global variables like ‘%log原创 2020-12-14 11:29:37 · 122 阅读 · 0 评论 -
MySQL中int(M)和tinyint(M)数值类型中M值的意义
在一开始接触MySQL数据库时,对于int(M)及tinyint(M)两者数值类型后面的M值理解是最多能够插入数据库中的值不能大于M;后来工作后,也是一边学习一边使用,之后的理解是其中的M的意思是插入数据库中的值的字符长度不能大于M,例如,int(4),想要插入1234,1234的字符长度是4,就正好可以插入数据库,12341就不行,因为是5个字符长度,这也都是道听途说,自己从来没有验证过;如今,由于面试中经常会被问到有关数据库方面的知识,今天也想着深入了解下这个M代表的含义(上述两个理解都是错误的)。转载 2020-12-07 17:01:40 · 265 阅读 · 0 评论 -
mysql : show processlist 详解
最近排查一些MySQL的问题,会经常用到 show processlist,所以在这里把这个命令总结一下,做个备忘,以备不时只需。首先是几条常用的SQL。1、按客户端 IP 分组,看哪个客户端的链接数最多 1 selectclient_ip,count(client_ip)asclient_numfrom(selectsubstring_index(host,':',1)asclient_ipfrominformation_schema.proc...转载 2020-12-07 13:23:03 · 186 阅读 · 0 评论 -
MySQL JOIN原理
先看一下实验的两张表:表comments,总行数28856表comments_for,总行数57,comments_id是有索引的,ID列为主键。以上两张表是我们测试的基础,然后看一下索引,comments_for这个表comments_id是有索引的,ID为主键。最近被公司某一开发问道JOIN了MySQL JOIN的问题,细数之下发下我对MySQL JOIN的理解并不是很深刻,所以也查看了很多文档,最后在InsideMySQL公众号看到了两篇关于JOIN的分析,感觉写的太好了,拿出转载 2020-12-04 16:48:51 · 71 阅读 · 0 评论 -
mysql中同时使用max和group造成数据错误的解决方法
原因:主要是group by 分组后显示的是第一条记录,而max()获取的是相同shop_id中最大的score值造成的。解决方法: select a.id, a.sold_count, a.shop_id from products as a,(select max(sold_count) as sold_count, shop_id原创 2020-12-04 11:33:50 · 1066 阅读 · 1 评论 -
mysql存储过程实现 非均匀随机生成数字
# 非重复DELIMITER $$CREATE PROCEDURE non_uniform_random1(IN json_str VARCHAR(255), IN number INT)BEGIN DECLARE i INT; DECLARE j INT; DECLARE no_uniformity_reduce INT; DECLARE max_min INT; DECLARE proSum INT; DECLARE no_uniformity_原创 2020-11-12 17:09:50 · 93 阅读 · 0 评论 -
mysql查看sql语句的执行时间
1 show profiles;2 show variables;查看profiling 是否是on状态;(可以省略)3 如果是off,则 set profiling = 1; (可以直接执行)4 执行自己的sql语句;5 show profiles;就可以查到sql语句的执行时间;原创 2020-09-29 11:50:40 · 185 阅读 · 0 评论 -
mysql中distinct
select distinct id,a,b from tName与select distinct id from tName是不一样的!第一种情况会选择唯一的一行。第二种情况会选择唯一列。第一种只要三个字段都不重复就取出来。第二种只取唯一的ID原创 2020-09-09 17:55:44 · 52 阅读 · 0 评论 -
mysql中left join,right join和join(inner join)的区别
left join:以左表为主,查出来的结果显示左表的所有数据,然后右表显示的是和左表有交集部分的数据。right join:以右表为主,查出来的结果是显示右表中的所有数据,然后左表显示的是和右表有交集的数据。join(inner join):查出来的是两个表中有交集的部分,没有交集的部分不显示。...原创 2020-08-28 13:53:56 · 559 阅读 · 0 评论 -
mysql中left join 右表字段为空 数据查询不出来原因
mysql中left join 右表字段为空 数据查询不出来原因: where条件中包含有右表字段的筛选条件,需要将筛选条件写入到left join的条件中。原创 2020-08-26 16:24:55 · 8174 阅读 · 0 评论 -
mysql中将两个表中数据合并在一起包括相同的数据和不同数据
select * from(selct a1,b1 from table1 where 条件 union select a1,b1 from table2 where 条件 ) as table3 group by a1;原创 2020-08-25 09:40:36 · 2256 阅读 · 0 评论