mysql3
略
某科学的南条
我要偷偷的惊艳,然后打工所有人
展开
-
on duplicate key update的多种使用方式
一.on dupdate key update 语句基本功能是:当表中没有原来记录时,就插入,有的话就更新1,on duplicate key update 语句根据主键id来判断当前插入是否已存在。2,已存在时,只会更新on duplicate key update之后限定的字段。二.on duplicate key update 语句也可以根据唯一键来判断当前插入的记录是否已存在比如唯一主键PRIMARY KEY其实就这些东西,总结起来就是判断是否需要新增还是更新数据,可以按照主键id或者唯一原创 2021-10-18 17:28:50 · 10067 阅读 · 0 评论 -
mysql随机修改日期字段
mysql中有日期操作函数:比如新增3天:select date_add(字段名称, interval 3 day) from 表名;还有随机数:SELECT FLOOR(1 + (RAND() * 12));那么修改表的日期字段随机新增24天的写法为:update 表名 set 字段=date_add(字段, interval FLOOR(1 + (RAND() * 24)) day);那么修改表的日期字段随机新增24月的写法为:update 表名 set 字段=date_add(字原创 2021-09-23 13:51:38 · 1133 阅读 · 0 评论 -
mysql的视图介绍
视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,并可以将其当作表来使用。 例如不用视图调用: SELECT * from (select * from student where gender='男') as A where A.class_id>1; 但是如果你一千条查询中有一半以上需要用到上面的临时表进行查询呢,如...原创 2021-10-13 15:07:37 · 317 阅读 · 0 评论 -
mysql查询数据量大的时候不走索引
如果达到 30% 则MYSQL不会再使用索引。因为使用索引的开销反而更大。可以在from表后面加强制索引 from S_SALE_FOLLOW T force index(index1)原创 2021-09-23 14:03:27 · 3885 阅读 · 0 评论 -
mysql触发器对于null值的处理
mysql的触发器是不会对null值进行直接监控的,需要手动对于null值做处理这样处理null值就可以NEW.prom_price is not null and OLD.prom_price is null原创 2021-11-22 09:20:42 · 861 阅读 · 0 评论 -
Mysql中日期和时间戳互相转换函数
时间戳转换成日期函数:FROM_UNIXTIMEselect FROM_UNIXTIME('1429063399','%Y年%m月%d') from crm_invest_apply日期转换为时间戳函数:UNIX_TIMESTAMPSELECT UNIX_TIMESTAMP('2021-08-16 14:39:01')原创 2021-09-23 11:29:56 · 697 阅读 · 0 评论 -
Mysql自增ID用完了会咋样?
这个问题其实可以分为有主键 & 无主键两种情况回答。 国际惯例,先上张脑图: 02 有主键 如果你的表有主键,并且把主键设置为自增。 在 MySQL 中,一般会把主键设置成 int 型。而 MySQL 中 int 型占用 4 个字节,作为有符号位的话范围就是 [-2...原创 2021-12-09 15:24:11 · 438 阅读 · 0 评论 -
MySQL并发参数的调整
从实现上来说,MySQL Server 是多线程结构,包括后台线程和客户服务线程。多线程可以有效利用服务器资源,提高数据库的并发性能。在Mysql中,控制并发连接和线程的主要参数包括 max_connections、back_log、thread_cache_size、table_open_cahce。 1.max_connections 采用max_connections 控制允许连接到MySQL数据库的...原创 2021-10-26 14:44:46 · 361 阅读 · 0 评论 -
mysq查看死锁和解除锁
解除正在死锁的状态有两种方法:第一种:1.查询是否锁表show open tables where In_use > 0;2.查询进程(如果您有SUPER权限,您可以看到所有线程。否则,您只能看到您自己的线程)show full processlist;3.杀死进程id(就是上面命令的id列)kill id第二种:1.查看下在锁的事务SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX;2.杀死进程id(就是上面命令的trx_mysql_原创 2021-10-20 16:55:58 · 737 阅读 · 0 评论 -
show full processlist详解
show full processlist显示哪些线程正在运行本语句报告TCP/IP连接的主机名称(采用host_name:client_port格式),以方便地判定哪个客户端正在做什么。如果您得到“too many connections”错误信息,并且想要了解正在发生的情况,本语句是非常有用的。MySQL保留一个额外的连接,让拥有SUPER权限的 账户使用,以确保管理员能够随时连接和检查系统(假设您没有把此权限给予所有的用户)id #ID标识,要kill一个语句的时候很有用use原创 2021-10-20 16:46:10 · 1214 阅读 · 0 评论