mysql语法大全总结,内含DDL,DML,DQL,DCL等语句,可作为工作学习的小字典,随时查看学习,查询所有数据库、查询当前数据库、创建数据库、删除数据库、切换数据库、查询当前数据库的所有表、查看指定表结构、查询指定表的建表语句、创建表结构、修改字段名和字段类型、给指定字段添加数据(insert)、给所有字段添加数据(insert)、批量添加数据(insert)、修改数据的语法、删除数据的具体语法 、- 基本查询(无条件) - 条件查询(where) - 聚合函数(count,max,min,avg,sum) - 分组查询(group by) - 排序查询(order by) - 分页查询(limit) ### MySQL基本语法精要 MySQL是一种广泛使用的开源关系型数据库管理系统。掌握其基本语法对于进行高效的数据管理和查询至关重要。本文将全面概述MySQL的基本语法,包括DDL(数据定义语言)、DML(数据操作语言)、DQL(数据查询语言)以及DCL(数据控制语言),旨在帮助读者快速理解和应用MySQL的核心功能。 #### 1. DDL(数据定义语言) DDL主要用于定义数据库对象(如表、索引、视图等)的结构和属性。主要命令包括`CREATE`、`ALTER`和`DROP`。 - **查询所有数据库**: ```sql SHOW DATABASES; ``` - **查询当前数据库**: ```sql SELECT DATABASE(); ``` - **创建数据库**: ```sql CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARACTER SET 字符集] [COLLATE 排序规则]; ``` - **删除数据库**: ```sql DROP DATABASE IF EXISTS 数据库名; ``` - **切换数据库**: ```sql USE 数据库名称; ``` - **查询当前数据库的所有表**: ```sql SHOW TABLES; ``` - **查看指定表结构**: ```sql DESC 表名; ``` - **查询指定表的建表语句**: ```sql SHOW CREATE TABLE 表名; ``` - **创建表结构**: ```sql CREATE TABLE 表名 ( 字段1 字段1类型 [COMMENT '注释'], 字段2 字段2类型 [COMMENT '注释'] ); ``` - **添加字段**: ```sql ALTER TABLE 表 ADD 字段名 类型(长度); ``` - **修改数据类型**: ```sql ALTER TABLE 表 MODIFY 字段名 新数据类型; ``` - **修改字段名和字段类型**: ```sql ALTER TABLE 表 CHANGE 旧字段名 新字段名 类型; ``` - **删除字段**: ```sql ALTER TABLE 表 DROP 字段名; ``` - **修改表名**: ```sql ALTER TABLE 表 RENAME TO 新表名; ``` - **删除表**: ```sql DROP TABLE IF EXISTS 表; ``` #### 2. DML(数据操作语言) DML用于操作数据库中的数据,主要包括插入(INSERT)、更新(UPDATE)和删除(DELETE)。 - **给指定字段添加数据**: ```sql INSERT INTO 表 (字段1, 字段2) VALUES (值1, 值2); ``` - **给所有字段添加数据**: ```sql INSERT INTO 表 VALUES (值1, 值2, ...); ``` - **批量添加数据**: ```sql INSERT INTO 表 VALUES (值1, 值2, ...), (值1, 值2, ...), (值1, 值2, ...); ``` - **修改数据**: ```sql UPDATE 表 SET 字段1 = 值1, 字段2 = 值2, ... WHERE 条件; ``` - **删除数据**: ```sql DELETE FROM 表 WHERE 条件; ``` #### 3. DQL(数据查询语言) DQL用于检索数据库中的数据,是进行数据分析的基础。 - **基本查询(无条件)**: ```sql SELECT * FROM 表; SELECT 字段1, 字段2 FROM 表; ``` - **字段设置别名**: ```sql SELECT 字段1 AS 别名, 字段2 AS 别名 FROM 表; ``` - **去除重复数据**: ```sql SELECT DISTINCT 字段列表 FROM 表名; ``` - **条件查询**: ```sql SELECT 字段列表 FROM 表 WHERE 条件列表; SELECT 字段 FROM 表 WHERE BETWEEN AND; SELECT 字段 FROM 表 WHERE IN (...); SELECT * FROM emp WHERE name LIKE '__'; -- 查询姓名为两个字的员工 SELECT * FROM emp WHERE idcard LIKE '%X'; -- 查询最后一位身份证号是X的员工 ``` - **聚合函数**: | 函数 | 功能 | | --- | --- | | COUNT | 统计数量 | | MAX | 最大值 | | MIN | 最小值 | | AVG | 平均值 | | SUM | 求和 | - **聚合函数语法**: ```sql SELECT 聚合函数(字段列表) FROM 表; ``` - **分组查询**: ```sql SELECT 字段列表 FROM 表 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后的过滤条件]; ``` - **排序查询**: ```sql SELECT 字段列表 FROM 表 ORDER BY 字段1 [ASC|DESC], 字段2 [ASC|DESC]; ``` - **分页查询**: ```sql SELECT 字段列表 FROM 表 LIMIT 起始位置, 记录数; ``` - **WHERE与HAVING的区别**: - 执行时机不同:`WHERE`是在分组之前进行过滤,不满足`WHERE`条件的不会参与分组;而`HAVING`是在分组后对结果进行过滤。 - 判断条件不同:`WHERE`不能对聚合函数进行判断,而`HAVING`可以。 例如,查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于3的工作地址: ```sql SELECT work_address, COUNT(*) AS address_count FROM employees WHERE age < 45 GROUP BY work_address HAVING address_count > 3; ``` 以上就是MySQL基本语法的总结,希望这些内容能够帮助你在日常开发和维护工作中更加得心应手。熟练掌握这些命令和技巧将大大提高你的工作效率。
- 粉丝: 1
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助