在数据库中,查询操作是非常重要的一部分,SQL(结构化查询语言)提供了丰富的查询功能来满足各种需求。以下是一些常见的查询操作及其详细介绍和示例:
1. 别名 (Alias)
别名用于给表或列临时命名,使查询结果更易读。
SELECT column_name AS alias_name
FROM table_name;
示例:
SELECT id AS 'ID', name AS 'Name'
FROM employee;
2. BETWEEN
BETWEEN
运算符用于选择一个范围内的值。
SELECT column_name
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
示例:
SELECT *
FROM orders
WHERE price BETWEEN 50 AND 100;
3. CASE
CASE
语句用于条件判断,并根据条件返回相应的值。
SELECT column_name,
CASE
WHEN condition THEN result1
WHEN condition THEN result2
ELSE result3
END
FROM table_name;
示例:
SELECT name,
CASE
WHEN salary > 5000 THEN 'High'
WHEN salary > 3000 THEN 'Medium'
ELSE 'Low'
END AS salary_grade
FROM employee;
4. DISTINCT
DISTINCT
关键字用于返回唯一不同的值。
SELECT DISTINCT column_name
FROM table_name;
示例:
SELECT DISTINCT dept
FROM employee;
5. ORDER BY
ORDER BY
用于根据一个或多个列对结果进行排序。
SELECT column_name
FROM table_name
ORDER BY column_name [ASC|DESC];
示例:
SELECT name, salary
FROM employee
ORDER BY salary DESC;
6. UNION
UNION
运算符用于合并两个或多个 SELECT
语句的结果集。
SELECT column_name FROM table1
UNION
SELECT column_name FROM table2;
示例:
SELECT name FROM employees_usa
UNION
SELECT name FROM employees_uk;
7. 正则表达式 (REGEXP)
REGEXP
运算符用于匹配正则表达式。
SELECT column_name
FROM table_name
WHERE column_name REGEXP 'pattern';
示例:
SELECT name
FROM employee
WHERE name REGEXP '^J';
8. 分页查询
分页查询用于从大数据集中获取部分数据,通常与 LIMIT
和 OFFSET
一起使用。
SELECT column_name
FROM table_name
LIMIT number OFFSET number;
示例:
SELECT *
FROM orders
LIMIT 10 OFFSET 20;
9. WHERE
WHERE
子句用于根据指定条件过滤记录。
SELECT column_name
FROM table_name
WHERE condition;
示例:
SELECT name, salary
FROM employee
WHERE dept = 'HR';
查询集(表或子查询)可以指定别名:
在 SQL 中,你可以给表或子查询结果指定一个别名,这样在后续的查询中可以更方便地引用。例如:SELECT e.name, e.salary FROM employee AS e;
查询集的列可以指定别名:
在 SQL 查询中,你可以给结果集的列指定一个别名,这样结果会更易读或更符合需求。例如:SELECT name AS employee_name, salary AS employee_salary FROM employee;
可以用双引号或反引号将别名包围起来:
SQL 标准允许使用双引号包围别名,而 MySQL 还允许使用反引号包围别名。例如:SELECT name AS "Employee Name" FROM employee; SELECT name AS `Employee Name` FROM employee;
本文由mdnice多平台发布
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。