|
查询语句在 MySQL 中是通过 `SELECT` 语句来实现的。以下是一些基本和常见的查询语句示例:
### 基本查询
- 查询表中的所有列:
```sql
SELECT * FROM table_name;
```
- 查询表中的特定列:
```sql
SELECT column1, column2 FROM table_name;
```
### 条件查询
- 使用 `WHERE` 子句指定查询条件:
```sql
SELECT * FROM table_name WHERE condition;
```
- 简单条件表达式(例如,等于、不等于、大于、小于等):
```sql
SELECT * FROM employees WHERE salary = 5000;
SELECT * FROM employees WHERE salary != 5000;
SELECT * FROM employees WHERE age > 30;
```
- 逻辑表达式(AND, OR, NOT):
```sql
SELECT * FROM employees WHERE department = 'Sales' AND salary > 5000;
SELECT * FROM employees WHERE department = 'Sales' OR department = 'Marketing';
SELECT * FROM employees WHERE NOT (salary >= 5000);
```
### 模糊查询
使用 `LIKE` 关键字进行模式匹配:
```sql
SELECT * FROM employees WHERE name LIKE 'J%'; -- 开头为 J 的名字
SELECT * FROM employees WHERE name LIKE '%a%'; -- 包含字母 a 的名字
```
### 范围查询
使用 `BETWEEN ... AND ...` 来查询值在指定范围内的记录:
```sql
SELECT * FROM employees WHERE hire_date BETWEEN '2000-01-01' AND '2010-12-31';
```
### 列表查询
使用 `IN` 来查询列值是否在给定的值列表中:
```sql
SELECT * FROM employees WHERE department IN ('HR', 'IT');
```
### 空值查询
查询某列值是否为空或非空:
```sql
SELECT * FROM employees WHERE email IS NULL;
SELECT * FROM employees WHERE email IS NOT NULL;
```
### 排序查询
使用 `ORDER BY` 对结果进行排序:
```sql
SELECT * FROM table_name ORDER BY column_name ASC|DESC;
-- 多列排序
SELECT * FROM students ORDER BY class ASC, student_id DESC;
```
### 分组与聚合查询
使用 `GROUP BY` 结合聚合函数如 `COUNT()`, `SUM()`, `AVG()`, `MAX()`, `MIN()`:
```sql
SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name;
-- 示例:计算每个产品的总销售数量
SELECT product_id, SUM(quantity) AS total_quantity FROM orders GROUP BY product_id;
```
### 限制查询结果数量
使用 `LIMIT` 来限制返回的行数:
```sql
SELECT * FROM table_name LIMIT number_of_rows;
```
这些是 MySQL 查询语句的一些基础和常见用法。根据不同的需求,您可以组合使用这些子句来构建复杂的查询语句。
|
|