Mysql
Wiley_L
这个作者很懒,什么都没留下…
展开
-
navicat 批量修改数据表字符集
一、单个表修改alter table 表名 convert to character set utf8mb4 collate utf8mb4_general_ci; #表内varchar字符集也会变化二、查询出所需要修改的所有表SELECT CONCAT( 'alter table ', table_schema, '.', TABLE_NAME, ' convert to character set utf8mb4 collate utf8mb4_general_ci;'..原创 2021-11-16 17:50:53 · 2552 阅读 · 0 评论 -
navicat 批量清空表数据,并且自增id为1
一、单个表清空数据truncate table 表名; # 清空表数据并设置id从1开始自增二、查询出所需要清空的所有表SELECT CONCAT( 'truncate TABLE ', table_schema, '.', TABLE_NAME, ';' ) FROM INFORMATION_SCHEMA.TABLES WHERE table_schema IN ( '数据库1', '数据库2' );三、得到所有表名四、复制结果,运行,清空所有...原创 2020-08-31 09:52:37 · 3817 阅读 · 0 评论 -
mysql 索引失效原因
索引失效原因总结1. 随着表的增长,where条件出来的数据太多,大于15%,使得索引失效(会导致CBO计算走索引花费大于走全表)2. 统计信息失效 需要重新搜集统计信息3. 索引本身失效 需要重建索引下面是一些不会使用到索引的原因索引失效 1) 没有查询条件,或者查询条件没有建立索引 2) 在查询条件上没有使用引导列 3) 查询的数量是大表的大部分,应该是30%以上。 4) ...转载 2018-05-24 16:27:53 · 5243 阅读 · 1 评论 -
mysql 当前日期前后n天
CURDATE() 当前日期 yyyy-mm-dd NOW() 当前时间 yyyy-mm-dd hh:ii:ssUNIX_TIMESTAMP() 日期转时间戳INTERVAL 2 DAY 前2天INTERVAL -2 DAY 后2天INTERVAL 2 WEEK/MONTH/YEAR 周/月/年当前日期前2天SELECT DATE_SUB(CURDATE()...原创 2018-05-30 10:26:39 · 4928 阅读 · 0 评论 -
mysql 表名为变量
SET @process_form = 10;SET @run_id = 1665;//表名为变量时,拼装sqlSET @data_sql = CONCAT('SELECT * FROM home_',@process_form,' WHERE id = ',@run_id); PREPARE stmt FROM @data_sql; //固定格式EXECUTE stmt; //固定格式...原创 2018-05-30 10:35:29 · 6905 阅读 · 0 评论 -
SQL 时间戳转换
时间戳转为日期FROM_UNIXTIME('1430236800','%Y-%m-%d %H:%i:%s')原创 2019-05-29 17:17:41 · 1234 阅读 · 0 评论