史上最简单的 MySQL 教程(二十三)「数据的高级操作 之 查询(上)」

温馨提示:本系列博文已经同步到 GitHub,地址为「mysql-tutorial」,欢迎感兴趣的童鞋StarFork,纠错。

数据的高级操作

查询数据(上)

  • 基本语法select + 字段列表/* + from + 表名 + [where 条件];
  • 完整语法select + [select 选项] + 字段列表[字段别名]/* + from + 数据源 + [where 条件] + [1] + [2] + [3]; + [1] = [group by 子句] + [2] = [order by 子句] + [3] = [limit 子句]

SELECT 选项

select选项,即select对查出来的结果的处理方式。

  • all:默认,保留所有的查询结果;
  • distinct:去重,将查出来的结果中所有字段都相同的记录去除。

执行如下 SQL 语句,进行测试:

-- 查询表 my_copy 中的数据
select * from my_copy;
select all * from my_copy;
select distinct * from my_copy;
6

字段别名

字段别名,即当数据进行查询的时候,有时候字段的名字并不一定满足需求(特别地,在多表查询的时候,很可能会有同名字段),这时就需要对字段进行重命名、取别名。

  • 基本语法字段名 + [as] + 别名;

执行如下 SQL 语句,进行测试:

-- 使用别名
select id,
name as 姓名,
age as 年龄,
grade as 年级
from student;
7

数据源

数据源,即数据的来源,关系型数据库的数据源都是数据表,本质上只要保证数据类似二维表,最终就可以作为数据源。

数据源分为 3 种,分别为:单表数据源,多表数据源和查询语句。

第 1 种:单表数据源

  • 基本语法select * from + 表名;
8

第 2 种:多表数据源

  • 基本语法select * from + 表名1,表名2...;
9

如上图所示,使用多表数据源时默认从一张表中取出一条记录去另外一张表中匹配所有记录,而且全部保留,比较浪费资源,应该尽量避免。

第 3 种:查询语句(子查询)

  • 基本语法select * from + (select * from + 表名) + [as] + 别名;
10

如上图所示,数据的来源是一条查询语句,而查询语句的结果是一张二维表。


温馨提示:符号[]括起来的内容,表示可选项;符号+,则表示连接的意思。


———— ☆☆☆ —— 返回 -> 史上最简单的 MySQL 教程 <- 目录 —— ☆☆☆ ————

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

扫码关注云+社区