MySql
MySql学习
zhang3361999
这个作者很懒,什么都没留下…
展开
-
MySql里边和查询成本计算相关的表及系统变量
整理自掘金小册《MySQL是怎样运行的:从根儿上理解MySQL》第13章,方便自己查找,做下记录。#查询表的统计数据show table status like 'table_name';#查看表的索引统计数据SHOW INDEX FROM table_name;#系统参数:eq_range_index_dive_limitSHOW VARIABLES LIKE 'eq_range...原创 2020-02-26 16:01:36 · 285 阅读 · 0 评论 -
MySql的null值及其处理
概述MySql中,null 值意味着"没数据"、"没有值"的意思。涉及到null值的运算规则比较运算符和算术算数运算符作用于null上,结果恒为null;除0运算发生时,结果也是null;某些函数作用在null上,结果是null,如:concact()函数。select null = null;结果:nullselect 1 + null;结果:nullselect 1 /...原创 2020-02-17 10:46:04 · 1193 阅读 · 0 评论 -
MySql中with rollup的使用
WITH ROLLUP使用with rollup,可以在group by的时候额外返回分组信息,避免多次查询统计,如:CREATE TABLE sales ( year INT, country VARCHAR(20), product VARCHAR(32), profit INT );SELECT year, country, prod...原创 2020-02-14 09:45:31 · 2447 阅读 · 0 评论 -
MySql中SQL_CALC_FOUND_ROWS和FOUND_ROWS函数的使用
作用在写分页程序时,常用的一条语句是:SELECT COUNT(*) FROM ... WHERE ...以此来获得记录的总数。除此以外,还可以通过SQL_CALC_FOUND_ROWS获得记录总数。SELECT SQL_CALC_FOUND_ROWS ... FROM ... WHERE ... LIMIT ...;SELECT FOUND_ROWS();此时,在执行第一条语句...原创 2020-02-13 12:00:41 · 1989 阅读 · 0 评论 -
Sql语句执行顺序
SQL语句形式<SELECT clause> [<FROM clause>] [<WHERE clause>] [<GROUP BY clause>] [<HAVING clause>] [<ORDER BY clause>] [<LIMIT clause>]执行顺序对from子句中的前两个表...原创 2020-02-12 11:13:22 · 90 阅读 · 0 评论 -
MySql中的子查询关键字用法
ALL、ANY、SOME形式:operand comparison_operator keyword (subquery)其中,comparison_operator是这些操作符中的一个:= > < >= <= <> !=keyword是All、Any、Some中的一个,下边分别说明:ALL:ALL关键字当操作数和子查询返回的所有值比较都...原创 2020-02-11 10:49:07 · 890 阅读 · 0 评论 -
MySql索引提示
介绍MySql索引提示(hint)用于告诉查询优化器在查询中如何选择索引,它跟在表名后边,形式是:tbl_name [[AS] alias] [index_hint_list] index_hint_list: index_hint [index_hint] ... index_hint: USE {INDEX|KEY}[FOR {JOIN|ORDER BY|GROUP BY}] ([...原创 2020-02-10 18:31:50 · 749 阅读 · 0 评论 -
MySql里truncate、delete和drop的区别
相同点:truncate和不带where子句的delete、以及drop都会删除表内的数据。drop、truncate都是DDL语句(数据定义语言),执行后会自动提交。不同点:truncate 和 delete 只删除数据不删除表的结构(定义)drop 语句将删除表的结构、被依赖的约束(constrain)、触发器(trigger)、索引(index);依赖于该表的存储过...原创 2020-01-19 16:22:45 · 134 阅读 · 0 评论 -
MySql命令记录
show full processlist;查询mySQL当前正在处理的所有查询。set autocommitset autocommit = 0:关闭mySQL事务自动提交。set autocommit = 1:开启mySQL事务自动提交。在一个session内有效。show global/session variables查看服务器/连接级别的系统变量,可以接like语句查看某个...原创 2020-01-18 17:44:14 · 130 阅读 · 0 评论 -
MySql语句记录
truncate table tablename;效果同不带where子句的delete相同,仅会删除表数据,不删除表结构;但是truncate table语句属于DDL语句,不会在删除时加事务,删除后也不可恢复。另一个区别是delete后不会真正释放表空间,而truncate table后会把表空间释放至低位水平。select SQL_CACHE / select SQL_NO_CACHE...原创 2020-01-18 17:40:43 · 168 阅读 · 0 评论 -
MySql函数记录
field(value, str1, str2, str3, …)返回value在str1,str2,str3,…里边的索引,如果值为null或者没有找到,就返回0。常用地方:把函数放在order by语句后实现自定义顺序排序.find_in_set(str,strlist)strlist是以逗号,分隔的字符串列表,函数会返回str在strlist里边从1到N的索引;需要注意的是,如果s...原创 2020-01-18 17:33:09 · 112 阅读 · 0 评论