MySQL技能树

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的高级功能。

你可能感兴趣的:(mysql,数据库)