MySQL8.0关系数据库基础教程(三)-select语句详解
1 查询指定字段
- 在 employee 表找出所有员工的姓名、性别和电子邮箱。


- SELECT 表示查询,随后列出需要返回的字段,字段间逗号分隔
- FROM 表示要从哪个表中进行查询
- 分号为语句结束符
这种查询表中指定字段的操作在关系运算中被称为投影(Projection)
使用 SELECT 子句进行表示。投影是针对表进行的垂直选择,保留需要的字段用于生成新的表
投影操作中包含一个特殊的操作,就是查询表中所有的字段。
2 查询全部字段
- ‘*’ 表示全部字段


数据库在解析该语句时,会使用表中的字段名进行扩展:
SELECT emp_id, emp_name, sex, dept_id, manager,
hire_date, job_id, salary, bonus, email
FROM employee;
虽然星号可以便于快速编写查询语句,但是在实际项目中不推荐使用:
- 程序可能并不需要所有的字段,避免返回过多的无用数据
- 当表结构发生变化时,星号返回的信息也会发生改变
除了查询表的字段之外,SELECT 语句还支持扩展的投影操作,包括基于字段的算术运算、函数和表达式等。
3 多字段查询
返回员工的姓名、一年的工资(12 个月的月薪)以及电子邮箱的大写形式:


结果中,返回字段的名称不是很好理解;能不能给它指定一个更明确的标题呢?
4 别名(Alias)
为了提高查询结果的可读性,可以使用别名为表或者字段指定一个临时的名称。SQL 中使用关键字 AS 指定别名。

别名中的关键字 AS 可以省略。

为 employee 表指定了一个表别名 e,然后为查询的结果字段指定了 3 个更明确的列别名(使用双引号)。在查询中为表指定别名之后,引用表中的字段时可以加上别名限定,例如 e.emp_name,表示要查看哪个表中的字段。
在 SQL 语句中使用别名不会修改数据库中存储的表名或者列名,别名只在当前语句中生效。
5 注释
分为单行注释和多行注释
- 单行注释以两个连字符(--)开始,直到这一行结束
- SQL 使用 C 语言风格的多行注释(/* … */)

# 也可以用于表示单行注释。
6 无表查询
- 计算一个表达式的值:


用于快速查找信息。这种语法并不属于 SQL 标准,而是数据库产品自己的扩展。
7 总结
SQL 不仅仅能够查询表中的数据,还可以返回算术运算、函数和表达式的结果。在许多数据库中,不包含 FROM 子句的无表查询可以用于快速获取信息。另外,别名和注释都可以让我们编写的 SQL 语句更易阅读和理解。
MySQL8.0关系数据库基础教程(三)-select语句详解的更多相关文章
- [SQL基础教程] 2-1 SELECT语句基础
[SQL基础教程] 2-1 SELECT语句基础 列的查询 Syntax SELECT<列名>,..... FROM<表名>; SELECT col_1, col_2 FROM ...
- mysql基础篇 - SELECT 语句详解
基础篇 - SELECT 语句详解 SELECT语句详解 一.实验简介 SQL 中最常用的 SELECT 语句,用来在表中选取数据,本节实验中将通过一系列的动手操作详细学习 SELEC ...
- MySQL之SELECT 语句详解
本文参考实验楼的SELECT 语句详解结合自己操作部分而写成. 注意:大多数系统中,SQL语句都是不区分大小写的,但是出于严谨和便于区分保留字和变量名,在书写的时,保留字应大写,而变量名应小写.所谓的 ...
- 基础select语句详解
在数据库操作语句中,使用最频繁,也被认为最重要的是 SELECT 查询语句.我们已经在不少地方用到了 SELECT * FROM table_name; 这条语句用于查看一张表中的所有内容. 而 SE ...
- 第四节基础篇 - SELECT 语句详解
4.1 基本的SELECT语句 select * from T_WEATHER select cityname from t_weather 4.2 数学符号条件(>.<.>=.&l ...
- MySQL8.0数据库基础教程(二)-理解"关系"
1 SQL 的哲学 形如 Linux 哲学一切都是文件,在 SQL 领域也有这样一条至理名言 一切都是关系 2 关系数据库 所谓关系数据库(Relational database)是创建在关系模型基础 ...
- Python基础教程,流程控制语句详解
1.程序结构 计算机在解决问题时,分别是顺序执行所有语句.选择执行部分语句.循环执行部分语句,分别是:顺序结构.选择结构.循环结构.如下图: 很多人学习python,不知道从何学起.很多人学习pyth ...
- sql select语句详解
先group by 后 order by SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ] * | expression [ AS ...
- T-SQL_select语句详解
select语句执行的过程: 先看查询内容 ==>where条件 ==>[分组条件] ==>[分组搜索条件] ==>内容输出 ==>[是否排序] SQL中SELECT语句 ...
随机推荐
- WPF 添加提示动画
下面放一张效果图: 那么具体是怎么实现呢: 前端XAML中: <Image Source="/Images/tips.png" HorizontalAlignment=&qu ...
- C# 根据链接提取div内容
安装NuGet包 HtmlAgilityPack var wc = new WebClient(); wc.Encoding = Encoding.GetEncoding("UTF-8 ...
- .Net Framework为什么需要联网?
.Net Framework在安装时需要从微软官方网站下载语言包,所以需要联网. 如果想要真正离线安装,需要先把所需的语言包下载下来.
- python文档字符串(函数使用说明)
关键字: 函数说明.help()函数 1.效果图: 2.代码: # 文档字符串( doc str) 是 函数使用说明 # 用法: 在函数第一行写一个字符串 def fn(*nums): ''' 函数的 ...
- Django框架初体验
前言 从今天开始学习测试开发知识,并会把每一次学习的过程和成果记录到博客,由于我也没怎么接触过python相关的开发框架,所以前期应该是艰难的,但是我相信努力就会有收获,如果你和我一样是个小白,那我们 ...
- APICloud开发者进阶之路 |iOS修改entitlements文件
本文出自APICloud官方论坛, 感谢论坛版主 技术咨询-Kenny 的分享. 一.概述iOS原生开发中若要实现某些特殊功能,如使用HealthKit.实现Universal Links等.需要 ...
- Nginx代理服务——反向代理
Nginx可以代理的服务 正向代理,例如翻墙 反向代理 正向和反向代理的区别 区别在于代理的对象不一样 正向代理:代理的对象是客户端 反向代理:代理的对象是服务器 配置语法 Synta ...
- 关于爬虫的日常复习(6)—— pyquery库
- 16. 产生Javadoc
过程与export >> javadoc一致,需要注意的是字符集的设置. -encoding UTF-8 -charset UTF-8 export >> javadoc : ...
- 三分钟网络基础-IP地址分类
IP 地址的编址方法共经过了三个历史阶段: 分类的 IP 地址 子网的划分 超网 这篇文章首先介绍,最初始的 IP 地址分类方法. 分类的 IP 将 IP 地址划分为若干个固定类,每一类地址都由两个固 ...