软件测试|SQL选取数据,你会了吗?

举报
霍格沃兹测试开发 发表于 2023/06/02 17:34:28 2023/06/02
【摘要】 前言很多时候,我们是需要从表中选择数据进行操作的,表中数据那么多,我们应该如何在表中选取数据呢?SQL SELECT 语句用于从表中选取符合条件的数据,该数据以临时表的形式返回,称为结果集。 SELECT基本语法SELECT column1, column2, columnNFROM table_nameWHERE conditions;column1, column2, columnN ...

前言

很多时候,我们是需要从表中选择数据进行操作的,表中数据那么多,我们应该如何在表中选取数据呢?

SQL SELECT 语句用于从表中选取符合条件的数据,该数据以临时表的形式返回,称为结果集。

SELECT

  1. 基本语法
SELECT column1, column2, columnN
FROM table_name
WHERE conditions;

column1, column2, columnN 表示选取的列,conditions 表示筛选条件,只有满足条件的数据才会被选取。

注:WHERE 子句不是必须的。

当我们没有WHERE子句时,SQL语句将变为:

SELECT column1, column2, columnN FROM table_name;

不使用 WHERE 子句意味着没有筛选条件,此时表中的所有数据都将被选取。

此外,如果要选取所有的列,那么可以使用*代替所有列名,语法如下:

SELECT * FROM table_name;

2. SELECT 子句

SELECT 可以结合下面的子句一起使用:

  • WHERE 子句:用来指明筛选条件,只有满足条件的数据才会被选取
  • ORDER BY 子句:按照某个字段对结果集进行排序
  • GROUP BY 子句:结合聚合函数,根据一个或多个列对结果集进行分组
  • HAVING 子句:通常和 GROUP BY 子句联合使用,用来过滤由 GROUP BY 子句返回的结果集
  1. 示例

我们以之前使用过的player表为例,表内容如下所示:

+--------+-----+--------+---------+
|name    | age |position|country  |
+--------+-----+--------+---------+
|穆勒    | 34  |  前锋   |Germany  |
|梅西    | 36  |  前锋   |Argentina|
|姆巴佩  | 25  |  前锋   |France   |
|格雷茨卡| 28  |  中场   |Germany  |

我们现在要获取表中所有运动员的name、age,代码如下:

SELECT name, age FROM player;

执行完成以后将得到下面的结果:

+--------+-----+
|name    | age |
+--------+-----+
|穆勒    | 34  |
|梅西    | 36  |
|姆巴佩  | 25  |
|格雷茨卡| 28  |  

如果希望选取所有字段,并且要求国籍为德国,可以使用下面的语句:

SELECT * FROM player WHERE country = Germany;

该语句将得到下面的结果:

+--------+-----+--------+---------+
|name    | age |position|country  |
+--------+-----+--------+---------+
|穆勒    | 34  |  前锋   |Germany  |
|格雷茨卡| 28  |  中场   |Germany  |

总结

本文主要介绍了SQL语法中如何选取数据的操作,后续我们将介绍SQL语法中指定查询条件的方法。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。