MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]

MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]1 查询指定字段 在 employee 表找出所有员工的姓名、性别和电子邮箱。 SELECT 表示查询,随后列出需要返回的字段,字段间逗号分隔 FROM 表示要从哪个表中进行查询 分号为语句结束符 这

MySQL8.0关系数据库基础教程(三)-select语句详解

1 查询指定字段

  • 在 employee 表找出所有员工的姓名、性别和电子邮箱。
    MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]
    MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]
  • SELECT 表示查询,随后列出需要返回的字段,字段间逗号分隔
  • FROM 表示要从哪个表中进行查询
  • 分号为语句结束符

这种查询表中指定字段的操作在关系运算中被称为投影(Projection)
MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]使用 SELECT 子句进行表示。投影是针对表进行的垂直选择,保留需要的字段用于生成新的表

投影操作中包含一个特殊的操作,就是查询表中所有的字段。

2 查询全部字段

  • ‘*’ 表示全部字段
    MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]
    MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]

数据库在解析该语句时,会使用表中的字段名进行扩展:

SELECT emp_id, emp_name, sex, dept_id, manager,
       hire_date, job_id, salary, bonus, email
  FROM employee;

代码100分

虽然星号可以便于快速编写查询语句,但是在实际项目中不推荐使用:

  • 程序可能并不需要所有的字段,避免返回过多的无用数据
  • 当表结构发生变化时,星号返回的信息也会发生改变

除了查询表的字段之外,SELECT 语句还支持扩展的投影操作,包括基于字段的算术运算、函数和表达式等。

3 多字段查询

返回员工的姓名、一年的工资(12 个月的月薪)以及电子邮箱的大写形式:
MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]
MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]

结果中,返回字段的名称不是很好理解;能不能给它指定一个更明确的标题呢?

4 别名(Alias)

为了提高查询结果的可读性,可以使用别名为表或者字段指定一个临时的名称。SQL 中使用关键字 AS 指定别名。
MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]
别名中的关键字 AS 可以省略。
MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]

为 employee 表指定了一个表别名 e,然后为查询的结果字段指定了 3 个更明确的列别名(使用双引号)。在查询中为表指定别名之后,引用表中的字段时可以加上别名限定,例如 e.emp_name,表示要查看哪个表中的字段。

在 SQL 语句中使用别名不会修改数据库中存储的表名或者列名,别名只在当前语句中生效。

5 注释

分为单行注释和多行注释

  • 单行注释以两个连字符(–)开始,直到这一行结束
  • SQL 使用 C 语言风格的多行注释(/* … */)

MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]

# 也可以用于表示单行注释。

6 无表查询

  • 计算一个表达式的值:
    MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]
    MySQL8.0关系数据库基础教程(三)-select语句详解[通俗易懂]

用于快速查找信息。这种语法并不属于 SQL 标准,而是数据库产品自己的扩展。

7 总结

SQL 不仅仅能够查询表中的数据,还可以返回算术运算、函数和表达式的结果。在许多数据库中,不包含 FROM 子句的无表查询可以用于快速获取信息。另外,别名和注释都可以让我们编写的 SQL 语句更易阅读和理解。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/9937.html

(0)
上一篇 2023-01-29
下一篇 2023-01-29

相关推荐

  • Python Redis连接池

    Python Redis连接池Redis是一个开源的,内存的数据结构存储系统,它被广泛地应用于缓存、消息中间件和排行榜等场景中。在Python中,我们可以利用redis-py库来连接Redis数据库。但是,在多个Python程序同时连接同一个Redis服务时,即使是轻微的时间差异都会导致每个程序都需要重新建立一个新的连接,这会增加Redis服务器的负载和网络开销。为了减少这些开销,我们可以利用Python中提供的Redis连接池来解决这个问题。

    2024-09-20
    15
  • Python程序中出现“substring not found”错误的解决方法

    Python程序中出现“substring not found”错误的解决方法a href=”https://beian.miit.gov.cn/”苏ICP备2023018380号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-03-19
    80
  • Python编程中的finditer使用方法详解

    Python编程中的finditer使用方法详解Python是一种易于学习和使用的编程语言,提供了许多常用的工具和库,使得开发者可以更加高效地完成各种任务。其中,finditer是一个非常常用的函数,在Python编程中被广泛使用。

    2024-04-30
    79
  • 使用Python计算数据的平均值

    使用Python计算数据的平均值a href=”https://beian.miit.gov.cn/”苏ICP备2023018380号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-06-05
    54
  • 倒序遍历Python

    倒序遍历Python在Python语言中,倒序遍历是一种非常常见的操作。倒序遍历Python有多种实现方式,包括倒序遍历数组、前序遍历二叉树、倒序遍历列表、range倒序遍历、vector倒序遍历、v-for倒序遍历、list倒序遍历、map倒序遍历、iterator倒序遍历、for循环倒序遍历等。在本文中,我们将从多个方面对倒序遍历Python做详细介绍,并给出代码示例。

    2024-07-19
    41
  • mysqldump 在 StoneDB 中的使用注意事项

    mysqldump 在 StoneDB 中的使用注意事项InnoDB导入StoneDB 此场景是利用mysqldump从InnoDB导出,然后再导入StoneDB,在导入StoneDB前,需要对导出文件做如下修改。 1)修改存储引擎 CREATE TABL

    2023-06-01
    150
  • mysql数据库精简与绿色启动的区别_数据库停止无法启动

    mysql数据库精简与绿色启动的区别_数据库停止无法启动1.下载MYSQL的zip包,解压ZIP包 版本低的相对需要的空间少,最好能在mysql-5.6以下,我测试的最高5.6版本为mysql-5.6.46,主要是里面有my.ini文件,高于5.6的版本里

    2023-01-25
    160
  • excel表格写入数据库_如何将数据自动写入数据库

    excel表格写入数据库_如何将数据自动写入数据库如何把格式复杂的EXCEL文件中的数据转变成结构化的数据集,然后存入数据库? 要在程序语言中编程解决这个问题,工作量是非常大的。尽管有些API可以用来读取EXCEL文件的Sheet和单元格信息,但还…

    2023-03-05
    152

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注