Coursera 笔记

Module 01 · Getting Started with SQL

COUNT, DISTINCT, LIMITSELECT 语句的实用表达式

Coursera ↗

好的,以下是关于在 SELECT 语句中使用的实用表达式的整理:

本视频简要介绍了在 SELECT 语句中常用的三个非常有用的表达式或内置功能:COUNT、DISTINCT 和 LIMIT。


1. COUNT:计算行数

COUNT 是一个内置的数据库函数,用于检索符合查询条件的行数。

语法格式 描述
SELECT COUNT(*) FROM table_name; 检索给定表中的总行数。
SELECT COUNT(column) FROM table_name WHERE condition; 检索在特定条件下,指定列的非空值的行数。

示例 1:计算表中总行数

要获取 MEDALS 表中的总行数(即记录总数):

SELECT COUNT(*) FROM MEDALS;\text{SELECT COUNT(*) FROM MEDALS;}

示例 2:计算符合特定条件的行数

假设 MEDALS 表有一个 COUNTRY 列,您想检索来自加拿大的奖牌获得者的记录数量:

SELECT COUNT(COUNTRY) FROM MEDALS WHERE COUNTRY = ’CANADA’;\text{SELECT COUNT(COUNTRY) FROM MEDALS WHERE COUNTRY = 'CANADA';}


2. DISTINCT:移除重复值

DISTINCT 关键字用于从结果集中移除重复的值,确保结果中的每一项都是唯一的。

语法格式:

SELECT DISTINCT column_name FROM table_name;\text{SELECT DISTINCT column\_name FROM table\_name;}

示例:检索独特的金牌获得国家

在 MEDALS 表中,一个国家可能多次获得金牌。要检索一份独一无二的国家列表,即移除所有重复的国家名称:

SELECT DISTINCT COUNTRY FROM MEDALS WHERE MEDALTYPE = ’GOLD’;\text{SELECT DISTINCT COUNTRY FROM MEDALS WHERE MEDALTYPE = 'GOLD';}


3. LIMIT:限制检索的行数

LIMIT 表达式用于限制从数据库中检索的行数。这对于检查大型结果集非常有用,因为它避免了检索全部数据。

语法格式:

SELECT column_list FROM table_name LIMIT N;\text{SELECT column\_list FROM table\_name LIMIT N;}

示例 1:检索表中的前 10 行

要检索 table_name 表中的前 10 行:

SELECT * FROM table_name LIMIT 10;\text{SELECT * FROM table\_name LIMIT 10;}

示例 2:限制特定年份的奖牌记录

要检索 MEDALS 表中 2018 年记录的前 5 行数据:

SELECT * FROM MEDALS WHERE YEAR = 2018 LIMIT 5;\text{SELECT * FROM MEDALS WHERE YEAR = 2018 LIMIT 5;}