一、引言
1、什么是SQL
SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库管理系统(RDBMS)的编程语言。SQL 主要用于对数据库中的数据进行查询、插入、更新、删除和管理等操作。
2、SQL的主要功能
- 查询数据:通过 SQL,你可以从数据库中检索(查询)特定的数据。查询操作通常使用 SELECT 语句。
- 插入数据:SQL 允许你向数据库表中插入新记录,使用 INSERT INTO 语句。
- 更新数据:你可以使用 SQL 来更新现有的数据,使用 UPDATE 语句。
- 删除数据:SQL 还支持删除数据,使用 DELETE 语句。
- 创建、修改和删除数据库结构:你可以通过 SQL 创建、修改、删除数据库、表格和其他数据库对象,使用 CREATE、ALTER 和 DROP 语句。
- 数据控制:SQL 允许管理用户权限,控制谁可以访问和操作数据,使用 GRANT、REVOKE 等语句。
3、什么是MySQL
MySQL 是一个开源的关系型数据库管理系统(RDBMS),它基于 SQL(结构化查询语言)来管理数据库中的数据。MySQL 是最流行的数据库之一,广泛应用于 Web 开发、数据存储、企业级应用等领域。它是 Oracle Corporation 公司的一部分,但仍然保持开源和广泛使用。
二、MySQL基础语法
1、数据查询(SELECT)
在 MySQL 中,数据查询是最常用的操作之一,而 SELECT 语句是用来从数据库中检索数据的基础语法。通过 SELECT 语句,我们可以根据需要提取特定表格中的数据,并进行排序、过滤、分组、联接等操作。
1. 基础查询
最简单的 SELECT 查询语句用于检索表中的所有列:
SELECT * FROM table_name;
- * 表示选择所有列。
- table_name 是你要查询的表的名称。
2. 选择特定列
如果你只需要查询某些列的数据,可以在 SELECT 后面指定列名:
SELECT column1, column2 FROM table_name;
例如,查询 employees 表中 name 和 age 两列的数据:
SELECT name, age FROM employees;
3. 查询并排序数据(ORDER BY)
ORDER BY 子句用于对查询结果进行排序。默认是按升序(ASC)排序,也可以指定降序(DESC)排序。
SELECT column1, column2 FROM table_name ORDER BY column1 ASC;
例如,按 age 排序:
SELECT name, age FROM employees ORDER BY age DESC;
4. 限制返回结果(LIMIT)
LIMIT 子句用于限制查询返回的行数,常用于分页或获取前几条记录。
SELECT column1, column2 FROM table_name LIMIT 10;
例如,查询 employees 表中的前 5 行记录:
SELECT name, age FROM employees LIMIT 5;
5. 条件查询(WHERE)
WHERE 子句用于指定查询条件,只有符合条件的行才会被返回。
SELECT column1, column2 FROM table_name WHERE condition;
例如,查询 employees 表中年龄大于 30 的员工:
SELECT name, age FROM employees WHERE age > 30;
条件可以包括比较操作符(如 =, !=, >, <, >=, <=),逻辑操作符(如 AND, OR, NOT),以及其它特殊操作符。
6. 多个条件(AND / OR)
可以通过 AND 或 OR 来组合多个查询条件:
SELECT name, age FROM employees WHERE age > 30 AND department = 'HR';
查询年龄大于 30 且部门是 'HR' 的员工。
SELECT name, age FROM employees WHERE age > 30 OR department = 'HR';
查询年龄大于 30 或者部门是 'HR' 的员工。