Oracle中有explain for,mysql中也有同样的功能,那便是explain,举例如下: mysql> explain select (case (select count(*) from stock) when 0 then 0 else max(id)+1 end) from stock; +----+-------------+-------+-------+---------------+---------+---------+------+------+----------…
mysql 存储过程:提供查询语句并返回查询执行影响的行数DELIMITER $$ DROP PROCEDURE IF EXISTS `p_get_select_row_number`$$ CREATE ), OUT p_count ) ) BEGIN -- 声明 ; ); -- 赋值 SET @stmt = CONCAT(p_select_sql); -- prepare PREPARE s1 FROM @stmt; -- 执行 EXECUTE s1; -- 获取查询影响的行数 SET @cn…
这篇笔记主要记录mysql的基础架构,一条查询语句是如何执行的. 比如,在我们从student表中查询一个id=2的信息 select * from student where id=2; 在解释这条语句执行流程之前,我们看看mysql的基础架构. 图来自极客时间的mysql实践,该图是描述的是MySQL的逻辑架构. server层包括连接器.查询缓存.分析器.优化器.执行器涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数所有跨存储引擎的功能都在这一层实现,比如存储过程.触发器.视等.…
查询的方法 *简单查询:select * from 表名 (* = 所有的) *读取特定列:select 字段一,字段二 from 表名 *条件查询:select * from 表名 where (多重条件的话需要and 或者or) *关键词查询:select * from 表名 like ‘%关键字%’ *排序查询:select * from 表名 order by 字段 (asc是从小到大,desc是从大到小) *范围查询:where XXX and XXX (a>1 and a<10)…
⼀条SQL查询语句是如何执⾏的? ⼤体来说,MySQL 可以分为 Server 层和存储引擎层两部分 Server 层 Server 层包括连接器.查询缓存.分析器.优化器.执⾏器等,涵盖 MySQL 的⼤多数核⼼服务功能,以及所有的内置函数(如⽇期.时间.数学和加密函数等),所有跨存储引擎的功能都在这⼀层实现,⽐如存储过程.触发器.视图等. 存储引擎层 ⽽存储引擎层负责数据的存储和提取.其架构模式是插件式的,⽀持 InnoDB(MySQL 5.5.5版本后默认).MyISAM. Memory…
工作中会遇到一些比较有用的mysql查询语句,有了它,可以对mysql进行更全面的维护和管理,下面就写一下我记录的 1.按照字段ru_id查询dsc_order_goods表中ru_id出现次数由多到少排序 SELECT ru_id,count(*) AS count FROM `dsc_order_goods` GROUP BY ru_id ORDER BY count DESC; 2.允许远程用户登陆mysql grant all PRIVILEGES on *.* to root@'192…
1. 查询单表全部 select* from 数据表名; 2. 查询单表中一个或者多个字段 select 字段1,字段2 from 数据表名; 3. 查询单表中的指定信息 select* from 数据表名 where 属性= .....: 查询所有红色的产品号 SELECT ProductNumber from SalesLT.Product WHERE Color = 'Red' 4. 带有 IN 关键字的查询 Select* from 数据表 where 字段 [NOT] IN (字段值…
SQL 中最常用的 SELECT 语句,用来在表中选取数据. 要记得的知识点如下: SELECT 语句格式: SELECT 要查询的列名 FROM 表名字 WHERE 限制条件: WHERE语句后: 数学符号条件:= > < >= <= between and 逻辑符:AND / OR / IN / NOT IN 通配符:LIKE + _ .% 排序:ORDER BY + ASC.DPSC SQL…
SELECT name, type_desc FROM sys.all_sql_modules s INNER JOIN sys.all_objects o ON s.object_id = o.object_id WHERE definition LIKE '%关键字%' ORDER BY type_desc, name; SELECT name, xtype FROM sysobjects o, syscomments s WHERE o.id = s.id AND text LIKE '%…