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…