首页
学习
活动
专区
圈层
工具
发布

《MySQL核心知识》第6章:查询语句

大家好,我是冰河~~ 今天是《MySQL核心知识》专栏的第6章,今天为大家系统的讲讲MySQL中的查询语句,希望通过本章节的学习,小伙伴们能够举一反三,彻底掌握MySQL中的各种查询语句。...limit限制查询结果的数量 在SQLSERVER中是使用「TOP」关键字,而在MYSQL中是使用「LIMIT」关键字 LIMIT[位置偏移量],行数 第一个“位置偏移量”参数指示MYSQL从哪一行开始显示...条记录行(因为从0开始数)开始之后的3条记录 注意:在MYSQL5.6中可以使用 LIMIT 4 OFFSET 3 ,意思是获取从第5行记录开始的3条记录,和 LIMIT 4,3 返回的结果是一样的...子查询 子查询这个特性从「MySQL4.1」开始引入。...所以最终的结果会有s_id为102、105、106的记录 正则表达式查询 正则表达式在「SQLServer」里面是没有的,但是在MySQL里不单只有,而且功能也比较丰富MySQL中使用REGEXP关键字指定正则表达式的字符匹配模式

1.3K30

玩转Mysql系列 - 第6篇:select查询基础篇

这是Mysql系列第6篇。 环境:mysql5.7.25,cmd命令中进行演示。...DQL(Data QueryLanguage):数据查询语言,通俗点讲就是从数据库获取数据的,按照DQL的语法给数据库发送一条指令,数据库将按需求返回数据。 DQL分多篇来说,本文属于第1篇。...查询的结果放在一个表格中,表格的第1行称为列头,第2行开始是数据,类属于一个二维数组。...查询常量 select 常量值1,常量值2,常量值3; 如: mysql> select 1,'b'; +---+---+ | 1 | b | +---+---+ | 1 | b | +---+--...1 row in set (0.00 sec) 认真看一下第1个和第3个返回的结果(列头和数据),是不是懵逼状态,建议这种的最好使用as,as后面跟上别名。

2.2K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL 基础知识笔记 第03期:子查询和关联查询

    作者简介 马听,多年 DBA 实战经验,对 MySQL、 Redis、ClickHouse 等数据库有一定了解,专栏《一线数据库工程师带你深入理解 MySQL》、《Redis 运维实战》作者。...; 2 查看所有数据 查出所有数据,以方便跟后续 SQL 结果做对比: select * from student_info; select * from student_score; 3 子查询...select * from student_info where stu_id in (select stu_id from student_score where stu_score >=90); 4 关联查询...(left join) select * from student_info a left join student_score b on a.stu_id = b.stu_id; 可以看出,左连接查询的结果为左表的全部记录...right join) select * from student_info a right join student_score b on a.stu_id = b.stu_id; 可以看出,右连接查询的结果为右表的全部记录

    79730

    Debezium 实战:几行代码,实现 MySQL CDC 数据采集

    前言在上一篇零帧起手,Debezium 实现 MySQL CDC 有多简单 文章中,我通过 debezium 的官方文档学习了如何配置一个 engine 和 MySQL connector,来实现一个最简单的...cdc 采集程序,那本篇文章主要是理论实践,从代码实现入手,完成本地 MySQL 采集的流程开发。...采集实现首先在 MySQL 中创建一个数据库和一个 test 表,并在表中插入数据,sql 如下:-- 创建数据库CREATE DATABASE IF NOT EXISTS debezium CHARACTER...for a signal or an event }}上面代码就是我按照官网做了一些修改,配置部分都是通用的,我们只需要关注的是 notifying 部分,这里实现了 debezium 采集的 MySQL...结语本篇文章主要从官方给出的样例,采集到了 MySQL 表中的数据,并打印到了控制台。

    1.2K10

    MySQL 子查询 嵌套查询

    MySQL 子查询 嵌套查询 一、带IN关键字的子查询 二、带EXISTS关键字的查询 三、带ANY、SOME 关键字的子查询 四、带ALL 关键字的查询 自言自语 一、带IN关键字的子查询 使用IN...关键字进行子查询的时候,内层查询语句仅仅返回一个数据列。...语法格式: SELECT 查询字段 FROM 表名 WHERE 字段名 [NOT] IN (SELECT 语句); 二、带EXISTS关键字的查询 意思就是内层的select查到了(至少查到了一行)才进行查询...,没有查到就不进行查询。...只要满足内层子查询中的任何一个比较条件,就返回一个结果作为外层查询的条件。 (满足任意一个) 语法格式: SELECT 查询字段 FROM 表名 WHERE 字段名 比较运算符(>,<..)

    17.5K40

    MySQL(联合查询、子查询、分页查询)

    目录 联合查询 子查询 分页查询 联合查询 联合查询是指将多个查询结果合并成一个结果集(二维表),通常出现在统计分析中。 语法: 查询语句1 UNION 查询语句2 UNION ......查询语句N 注意: 1.所有查询语句的返回结果的列数必须相等 2.每列的数据类型必须一致,【查询语句1中字段列表的类型必须和查询语句2中的字段列表类型对应且一致】 代码实例: SELECT user_id...子查询分类: 按结果及行数分: 1、 标量子查询(单行子查询:结果集只有一行一列) 2、 列子查询(多行子查询:结果集多行一列) 3、 行子查询(结果集有多行多列) 4、 表子查询(结果集有多行多列)...按出现位置分: 1、 SELECT 后面:只能出现标量子查询 2、 FROM 后面:表子查询(查询结果必须起别名) 3、 WHERE|HAVING:支持标量子查询,列子查询,行子查询 4、 EXISTS...后面:支持表子查询 代码实例: 查询订单信息,并显示用户姓名 SELECT a.

    21.9K20

    mysql连接查询与分组查询

    连表查询在项目中用的很频繁,今天在这里总结一下 假设两张表 user: id name dept_id dept: id dept_name 交叉连接(cross join) 交叉连接是一个笛卡尔积的结果...t1 union select * from t2 t1id t1str 1 1 2 2 3 3 2 a 3 b t1和t2的结果集被显示在了一起,默认以t1的字段为准,这里要注意: 使用union查询的时候...,两个语句查询出的字段数目必须要相同 查询的结果中两个语句重复的数据会被合成一条,如果要显示重复的记录,就需要使用 union all 全连接(full join) 我查了一下资料,mysql并不支持全连接...from t1 left join t2 on t1.t1id = t2.t2id t1id t1str t2id t2str 1 1 null null 2 2 2 a 3 3 3 b 参考资料 mysql...多表查询 mysql联表查询总结

    6.1K20

    MySQL 连接查询

    1.什么是连接查询 在关系型数据库管理系统(RDBMS)中,连接查询是一项重要的数据库操作,它允许我们从多个表中检索和组合数据,以便进行更复杂的查询和分析。...因此,当我们想要查看员工的个人信息以及他/她所在的部门信息,就需要同时查询 employee 和 department 表中的信息。此时,我们需要使用连接查询。...实际上,在 MySQL 中(仅限于 MySQL)CROSS JOIN 与 JOIN 和 INNER JOIN 的表现是一样的,在不指定 ON 条件得到的结果都是笛卡尔积,反之取两个表各自匹配的结果。...6.小结 连接查询是MySQL强大而常用的功能,它允许我们从多个表中检索和组合数据,以满足复杂的查询需求。...通过理解连接查询的基本概念和 MySQL 支持的连接类型,你可以更好地利用 MySQL 来处理复杂的数据查询和分析任务,提高数据库应用的灵活性和功能性。

    5.5K20

    MySQL 查询缓存

    MySQL查询执行流程 查询流程: 客户端发送一条查询给服务器; 服务器先检查查询缓存,如果命中了缓存,则立即返回存储在缓存中的结果;否则,进入下一阶段; 服务器进行SQL解析、预处理,再由优化器生成对应的执行计划...; MySQL根据优化器生成的执行计划,调用存储引擎的API来执行查询; 将结果返回给客户端; 查询缓存 用于保存MySQL查询语句返回的完整结果,被命中时,MySQL会立即返回结果,省去解析、优化和执行等阶段...; MySQL保存结果于缓存中,把select语句本身做hash计算,计算的结果作为key,查询结果作为value; 查询语句的大小写会影响缓存的存储和命中,故需保持查询语句的大小写一致性; 何种语句不会被缓存...查询语句中有一些不确定数据时,不会缓存,如now(),current_time()等 若查询中包含用户自定义函数,存储函数,用户变量,临时表,mysql库中系统表,或者任何包含权限的表,一般都不会缓存...缓存会带来额外开销,因为: 读查询在开始之前必须先检查是否命中缓存; 若某个读查询可以被缓存且未被缓存,那么当完成执行后,MySQL会将其结果存入查询缓存; 对写操作也有影响,因为当写入数据时,MySQL

    5K00
    领券