sql关键词
时间: 2025-07-30 15:03:33 浏览: 18
### 3. SQL 常用关键词及其用途
SQL(Structured Query Language)是一种用于管理和操作关系型数据库的标准语言。以下是一些常用的 SQL 关键词及其用途,涵盖数据查询、过滤、排序、聚合、连接、约束等操作。
#### 3.1 数据查询与去重
- `SELECT` 用于从数据库中检索数据。
- `DISTINCT` 用于返回唯一不同的值,常用于过滤重复记录。例如:
```sql
SELECT DISTINCT Company FROM Orders;
```
该语句用于从 `Orders` 表中查询唯一的 `Company` 值[^1]。
#### 3.2 条件过滤
- `WHERE` 用于在查询中添加条件,过滤满足特定标准的记录。例如:
```sql
SELECT * FROM Employees WHERE Salary > 50000;
```
- `HAVING` 通常与 `GROUP BY` 一起使用,用于对分组后的结果进行条件过滤。例如:
```sql
SELECT Department, COUNT(*) AS Total
FROM Employees
GROUP BY Department
HAVING COUNT(*) > 5;
```
该语句用于统计部门人数并过滤出人数大于 5 的部门[^2]。
- `IN` 用于指定一个值列表作为条件。例如:
```sql
SELECT * FROM Customers WHERE Country IN ('USA', 'Canada', 'UK');
```
- `BETWEEN` 用于选取介于两个值之间的数据范围。例如:
```sql
SELECT * FROM Products WHERE Price BETWEEN 10 AND 100;
```
- `LIKE` 用于模糊匹配字符串,`%` 表示任意多个字符,`_` 表示单个字符。例如:
```sql
SELECT * FROM Customers WHERE Name LIKE 'A%';
```
- `IS NULL` 和 `IS NOT NULL` 用于判断某个字段是否为空值。例如:
```sql
SELECT * FROM Orders WHERE ShipDate IS NULL;
```
#### 3.3 排序与限制结果
- `ORDER BY` 用于对查询结果进行排序,可以指定 `ASC`(升序,默认)或 `DESC`(降序)。例如:
```sql
SELECT * FROM Employees ORDER BY Salary DESC;
```
- `LIMIT` 用于限制返回的行数。例如:
```sql
SELECT * FROM Products ORDER BY Price DESC LIMIT 10;
```
- `TOP`(在 SQL Server 中)或 `ROWNUM`(在 Oracle 中)用于限制查询结果的前 N 条记录。例如(SQL Server):
```sql
SELECT TOP 10 * FROM Products;
```
#### 3.4 聚合函数与分组
- 聚合函数包括 `COUNT(*)`、`SUM()`、`AVG()`、`MAX()`、`MIN()` 等,用于对数据进行统计。例如:
```sql
SELECT COUNT(*) AS TotalOrders FROM Orders;
```
- `GROUP BY` 用于将数据按一个或多个列分组,通常与聚合函数一起使用。例如:
```sql
SELECT Department, AVG(Salary) AS AvgSalary
FROM Employees
GROUP BY Department;
```
#### 3.5 表连接
- `JOIN` 是连接操作的基础,用于根据某些条件将多个表的数据组合在一起。
- `LEFT JOIN`(左连接)会返回左表中所有记录,即使右表中没有匹配项。
- `RIGHT JOIN`(右连接)会返回右表中所有记录,即使左表中没有匹配项。例如:
```sql
SELECT * FROM Student LEFT JOIN School ON Student.SchoolID = School.SchoolID;
```
#### 3.6 条件逻辑与空值处理
- `IFNULL()`(MySQL)或 `COALESCE()`(通用)用于处理空值。例如:
```sql
SELECT IFNULL(Price, 0) FROM Products;
```
#### 3.7 约束与唯一性
- `UNIQUE` 用于确保某列中的所有值都是唯一的。
- `PRIMARY KEY` 是主键约束,确保某列(或多个列的组合)具有唯一值且不为空。
- `FOREIGN KEY` 是外键约束,用于维护两个表之间的链接关系。
#### 3.8 其他常用操作符
- `AND` 和 `OR` 用于组合多个条件。
- `AS` 用于为列或表指定别名。例如:
```sql
SELECT FirstName AS Name FROM Employees;
```
- `FOUND_ROWS()` 用于获取带有 `SQL_CALC_FOUND_ROWS` 的查询总行数,不考虑 `LIMIT` 的限制。例如:
```sql
SELECT SQL_CALC_FOUND_ROWS * FROM Products LIMIT 10;
SELECT FOUND_ROWS();
```
---
###
阅读全文
相关推荐



















