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

相关推荐
无限进步_7 分钟前
C++运算符重载完全指南:从基础到实战应用
开发语言·数据库·c++·windows·git·github·visual studio
正在走向自律13 分钟前
电科金仓 KEMCC-V003R002C001B0001 在CentOS7系统环境内测体验:安装部署与功能实操全记录
数据库·国产数据库·电科金仓·kemcc新版本·kemcc
一 乐14 分钟前
数码商城系统|电子|基于SprinBoot+vue的数码商城系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·springboot
Dillon Dong15 分钟前
【超详细】Ubuntu 上 MySQL 5.7 升级 MySQL 8 完整指南
linux·mysql·ubuntu
曹牧20 分钟前
Oracle:Replace
数据库·oracle
ZeroNews内网穿透22 分钟前
公网访问本地搭建开源在线流程图工具Draw.io
服务器·数据库·网络协议·安全·http·流程图·draw.io
m0_4887776522 分钟前
MySQL数据库管理
数据库·mysql·数据库管理
曹牧34 分钟前
Oracle:数字转换为字符串
数据库·oracle
菜鸟小九37 分钟前
mysql高级(mysql管理)
数据库·mysql
高级盘丝洞40 分钟前
如何通过Powerlink协议读取PLC数据
开发语言·数据库·php