MySQL作为一款广泛使用的关系型数据库管理系统,提供了丰富多样的SQL语句以支持数据的创建、查询、更新和删除等操作。以下是一份MySQL语句操作大全的概览,涵盖从数据库管理到复杂查询的常用命令:
### 一、数据库管理(DDL - 数据定义语言)
1. **创建数据库:**
```sql
CREATE DATABASE database_name;
```
2. **删除数据库:**
```sql
DROP DATABASE IF EXISTS database_name;
```
3. **创建表:**
```sql
CREATE TABLE table_name (
column1 datatype constraints,
column2 datatype constraints,
...
);
```
4. **修改表结构:**
```sql
ALTER TABLE table_name
ADD COLUMN new_column datatype constraints,
MODIFY COLUMN column_name datatype constraints,
DROP COLUMN column_name;
```
5. **删除表:**
```sql
DROP TABLE table_name;
```
### 二、数据操作(DML - 数据操纵语言)
6. **插入数据:**
```sql
UPDATE table_name
SET column1 = new_value1, column2 = new_value2
WHERE condition;
```
7. **更新数据:**
```sql
UPDATE table_name
SET column1 = new_value1, column2 = new_value2
WHERE condition;
```
8. **删除数据:**
```sql
DELETE FROM table_name
WHERE condition;
```9. **批量操作:**
```sql
-- 批量插入
INSERT INTO table_name (...)
VALUES (...),(...),(...);
-- 复制或移动行
INSERT INTO new_table SELECT * FROM old_table;
```
### 三、数据查询(DQL - 数据查询语言)
10. **简单查询:**
```sql
SELECT column1, column2,...
FROM table_name;
```
11. **条件查询:**
```sql
SELECT * FROM table_name
WHERE condition;
```
12. **排序查询:**
```sql
SELECT * FROM table_name
ORDER BY column1 ASC|DESC, column2 ASC|DESC;
```
13. **聚合函数查询:**
```sql
SELECT COUNT(column), AVG(column), SUM(column), MAX(column), MIN(column)
FROM table_name;
```
14. **分组查询:**
```sql
SELECT column1, COUNT(*)
FROM table_name
GROUP BY column1;
```
15. **联接查询:**
```sql
SELECT a.column, b.column
FROM table_a a
JOIN table_b b ON a.id = b.id;
```
16. **子查询:**
```sql
SELECT * FROM table1
WHERE column IN (SELECT column FROM table2 WHERE condition);
```
### 四、事务处理
17. **开启事务:**
```sql
START TRANSACTION;
```
18. **提交事务:**
```sql
COMMIT;
```
19. **回滚事务:**
```sql
ROLLBACK;
```
### 五、其他操作
20. **获取当前数据库:**
```sql
SELECT DATABASE();
```
21. **切换数据库:**
```sql
USE database_name;
```
22. **用户管理与权限设置:**
```sql
GRANT privileges ON database.* TO 'username'@'host' IDENTIFIED BY 'password';
REVOKE privilege ON database.* FROM 'username'@'host';
```
以上仅是MySQL语句的一部分摘要,实际使用中还有更多的高级特性及优化技巧,包括视图、存储过程、触发器、索引等。掌握这些基本操作后,您可以根据项目需求进一步深入学习和应用MySQL的高级功能。