MySQL技能树

MySQL作为一款广泛使用的关系型数据库管理系统,提供了丰富多样的SQL语句以支持数据的创建、查询、更新和删除等操作。以下是一份MySQL语句操作大全的概览,涵盖从数据库管理到复杂查询的常用命令:

一、数据库管理(DDL - 数据定义语言)

  1. **创建数据库:**
sql 复制代码
   ```sql
   CREATE DATABASE database_name;
   ```
  1. **删除数据库:**
sql 复制代码
   ```sql
   DROP DATABASE IF EXISTS database_name;
   ```
  1. **创建表:**
sql 复制代码
   ```sql
   CREATE TABLE table_name (
       column1 datatype constraints,
       column2 datatype constraints,
       ...
   );
   ```
  1. **修改表结构:**
sql 复制代码
   ```sql
   ALTER TABLE table_name 
       ADD COLUMN new_column datatype constraints,
       MODIFY COLUMN column_name datatype constraints,
       DROP COLUMN column_name;
   ```
  1. **删除表:**
sql 复制代码
   ```sql
   DROP TABLE table_name;
   ```

二、数据操作(DML - 数据操纵语言)

  1. **插入数据:**
sql 复制代码
   ```sql
   UPDATE table_name 
   SET column1 = new_value1, column2 = new_value2
   WHERE condition;
   ```
  1. **更新数据:**
sql 复制代码
   ```sql
   UPDATE table_name 
   SET column1 = new_value1, column2 = new_value2
   WHERE condition;
   ```
  1. **删除数据:**
sql 复制代码
   ```sql
   DELETE FROM table_name 
   WHERE condition;

```9. **批量操作:**

sql 复制代码
   ```sql
   -- 批量插入
   INSERT INTO table_name (...)
   VALUES (...),(...),(...);

   -- 复制或移动行
   INSERT INTO new_table SELECT * FROM old_table;
   ```

三、数据查询(DQL - 数据查询语言)

  1. **简单查询:**
sql 复制代码
    ```sql
    SELECT column1, column2,...
    FROM table_name;
    ```
  1. **条件查询:**
sql 复制代码
    ```sql
    SELECT * FROM table_name
    WHERE condition;
    ```
  1. **排序查询:**
sql 复制代码
   ```sql
    SELECT * FROM table_name
    ORDER BY column1 ASC|DESC, column2 ASC|DESC;
    ```
  1. **聚合函数查询:**
sql 复制代码
    ```sql
    SELECT COUNT(column), AVG(column), SUM(column), MAX(column), MIN(column)
    FROM table_name;
    ```
  1. **分组查询:**
sql 复制代码
    ```sql
    SELECT column1, COUNT(*)
    FROM table_name
    GROUP BY column1;
    ```
  1. **联接查询:**
sql 复制代码
    ```sql
    SELECT a.column, b.column
    FROM table_a a
    JOIN table_b b ON a.id = b.id;
    ```
  1. **子查询:**
sql 复制代码
    ```sql
    SELECT * FROM table1
    WHERE column IN (SELECT column FROM table2 WHERE condition);
    ```

四、事务处理

  1. **开启事务:**
sql 复制代码
    ```sql
    START TRANSACTION;
    ```
  1. **提交事务:**
sql 复制代码
    ```sql
    COMMIT;
    ```
  1. **回滚事务:**
sql 复制代码
    ```sql
    ROLLBACK;
    ```

五、其他操作

  1. **获取当前数据库:**
sql 复制代码
    ```sql
    SELECT DATABASE();
    ```
  1. **切换数据库:**
sql 复制代码
    ```sql
    USE database_name;
    ```
  1. **用户管理与权限设置:**
sql 复制代码
    ```sql
    GRANT privileges ON database.* TO 'username'@'host' IDENTIFIED BY 'password';
    REVOKE privilege ON database.* FROM 'username'@'host';
    ```

以上仅是MySQL语句的一部分摘要,实际使用中还有更多的高级特性及优化技巧,包括视图、存储过程、触发器、索引等。掌握这些基本操作后,您可以根据项目需求进一步深入学习和应用MySQL的高级功能。

相关推荐
一匹电信狗10 分钟前
【MySQL】数据库表的操作
linux·运维·服务器·数据库·mysql·ubuntu·小程序
api_1800790546020 分钟前
性能优化揭秘:将淘宝商品 API 响应时间从 500ms 优化到 50ms 的技术实践
大数据·数据库·性能优化·数据挖掘
白衣鸽子21 分钟前
MySQL 时间类型深度解析:精度、时区陷阱与版本兼容
数据库·后端·mysql
冲上云霄的Jayden24 分钟前
MySQL InnoDB 状态(SHOW ENGINE INNODB STATUS)深度分析与性能优化建议
数据库·mysql·性能优化·innodb
元闰子1 小时前
怎么让程序更高效地连起来?
数据库·redis·mysql
洲覆2 小时前
Redis 内存淘汰策略
开发语言·数据库·redis·缓存
胖头鱼的鱼缸(尹海文)2 小时前
数据库管理-第376期 Oracle AI DB 23.26新特性一览(20251016)
数据库·人工智能·oracle
麦聪聊数据2 小时前
浅谈SQL审核(一):SQL审核实现方式与常见工具的选择
数据库·sql
ajassi20002 小时前
开源 Linux 服务器与中间件(七)数据库--MySQL
linux·服务器·数据库·ubuntu·开源
韩立学长2 小时前
【开题答辩实录分享】以《自然灾害隐患点管理信息系统》为例进行答辩实录分享
数据库·spring boot