MySQL拓展知识点
1、获取服务器元数据
| |
| SELECT VERSION() |
| |
| |
| SELECT DATABASE() |
| |
| |
| SELECT USER() |
| |
| |
| SHOW STATUS |
| |
| |
| SHOW GLOBAL VARIABLES #全局系统变量,319条数据 |
| SHOW SESSION VARIABLES #会话系统变量,331条数据 |
| SHOW VARIABLES #331条数据,默认是会话系统变量 |
| |
| |
| |
| show variables like 'character_%' |
| show variables like 'collation_%' |
| |
| SELECT @@session.default_storage_engine |
| SELECT @@global.default_storage_engine |
2、获取表数据约束信息
| SELECT * FROM information_schema.`TABLE_CONSTRAINTS` WHERE table_schema = '数据库名' AND table_name = '表名' |
3、查看建表语句
注意事项
- 标准sql语句中要求列的别名使用双引号括起来、字符串则使用单引号括起来。虽然mysql使用单或双引号都不会报错,尽量别用。
| SELECT 1+1 "sum" FROM dual |
| SELECT 1+1 sum FROM dual |
| SELECT 1+1 'sum' FROM dual |
- 分组函数一般都会和group by联合使用,这也是为什么它被称为分组函数的原因。并且任何一个分组函数(count sum avg max min)都是在group by语句执行结束之后才会执行的。当一条sql语句没有group by的话,整张表的数据会自成一组。
| |
| select job,avg(sal) from emp group by job; |
- distinct只能出现在所有字段的最前面,用于对查询结果集的去重。
| select ename,distinct job from emp; |
- limit是sql语句最后执行的一个环节
| select 5 |
| ... |
| from 1 |
| ... |
| where 2 |
| ... |
| group by 3:后面只能是select的字段,因为在select之前执行,所以不能使用别名 |
| ... |
| having 4 |
| ... |
| order by 6:后面可以跟任意字段(或字段别名) |
| ... |
| limit 7 |
| ...; |
- 如何删除表和清空表中的数据
| |
| drop table 表名; |
| drop table if exists 表名; |
| |
| |
| truncate table 表名; // 表被截断,不可回滚。永久丢失。 |
- 在MySQL当中,凡是标识符是可以使用飘号括起来的。最好别用,不通用。
| CREATE TABLE `user` ( |
| `id` int(11) DEFAULT NULL, |
| `name` varchar(255) NOT NULL |
| ) ENGINE=InnoDB DEFAULT CHARSET=utf8; |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?