关系型数据库(如MySQL, PostgreSQL, Oracle, SQL Server等)使用SQL(结构化查询语言)来查询数据。以下是一些基本的SQL查询语句示例:
- 选择所有列:
SELECT * FROM 表名;
- 选择特定列:
SELECT 列1, 列2 FROM 表名;
- 带有条件的查询(使用
WHERE
子句):
SELECT * FROM 表名 WHERE 条件;
例如:
SELECT * FROM students WHERE age > 20;
- 排序结果(使用
ORDER BY
子句):
SELECT * FROM 表名 ORDER BY 列名 [ASC|DESC];
例如,按年龄降序排列学生:
SELECT * FROM students ORDER BY age DESC;
- 分组数据(使用
GROUP BY
子句):
SELECT 列名, COUNT(*) FROM 表名 GROUP BY 列名;
例如,计算每个班级的学生数量:
SELECT class, COUNT(*) as student_count FROM students GROUP BY class;
- 过滤分组后的数据(使用
HAVING
子句):
SELECT 列名, COUNT(*) FROM 表名 GROUP BY 列名 HAVING 条件;
例如,找出学生数量超过10的班级:
SELECT class, COUNT(*) as student_count FROM students GROUP BY class HAVING student_count > 10;
- 连接两个或多个表(使用
JOIN
子句):
SELECT 列名 FROM 表1 JOIN 表2 ON 表1.列 = 表2.列;
例如,假设有一个students
表和一个classes
表,它们通过class_id
字段连接:
SELECT students.name, classes.class_name
FROM students
JOIN classes ON students.class_id = classes.id;
- 限制返回的记录数(使用
LIMIT
子句):
SELECT * FROM 表名 LIMIT 数量;
例如,只返回前5个学生记录:
SELECT * FROM students LIMIT 5;
- 使用子查询:在
SELECT
,FROM
, 或WHERE
子句中使用另一个查询的结果。
这些只是SQL查询的一些基本示例。SQL的功能非常强大,还包括窗口函数、存储过程、触发器、视图等多种高级功能。为了充分利用关系型数据库,建议深入学习SQL和相关数据库管理系统的文档。