mysql基础

本文详细介绍了MySQL中的DDL(数据定义语言)用于创建、修改和删除数据库对象,DML(数据操纵语言)处理数据增删改,DQL(数据查询语言)用于数据检索,以及DCL(数据控制语言)涉及用户管理和权限控制。涵盖了各种关键操作和语法示例。
摘要由CSDN通过智能技术生成

mysql

DDL语句

DDL对数据库操作的语句,包括数据库,表和字段的创建,查询,删除,修改

DDL数据库操作

查询所有数据库
show databases;
创建数据库
create database [if not exit] 数据库名称;   
删除数据库
drop database [if exit] 数据库名称;
使用数据库
use 数据库名称;
查看当前使用数据库
select databases();

DDL表操作

查询当前数据库所有表
show tables;
查询表结构
desc 表名;
查询指定表的建表语句
show create table 表名;
创建表,[]内为可选
create table 表名{
    字段一 字段一类型[comment 字段一注释],
    字段二 字段二类型[comment 字段二注释],
    字段三 字段三类型[comment 字段三注释]
        
}[comment表注释]
删除表
drop table [if exit] 表名;
删除表,并重新创建该表
truncate table 表名;

DDL表字段操作

添加字段
alter table 表名 add 字段名 字段类型(长度) [commment 注释][约束];
修改字段类型
alter table 表名 modify 字段名 新字段类型(长度);
修改字段(字段名,字段类型)
alter table 表名 change 旧字段名 新字段名 类型;
删除字段
alter table 表名 drop 字段名;
修改表名
alter table 表名 rename to 新表名;

DML语句

DML语句是对表数据的增删改操作

DML表数据操作

添加数据,给指定字段添加数据
insert into 表名(字段名1.字段名2,...) values(1,2,...);
给全部字段添加数据
insert into 表名 valuse(1,2,...);
批量添加数据
insert into 表名(字段1,字段2,...) values(1,2,...),(1,2,...);
insert into 表名 values(1,2,...),(1,2,...);
修改数据
update 表名 set 字段名1=1,字段名2=2,...[where 条件];
删除数据
delete from 表名 [where 条件];

DQL语句

DQL是对表数据的查询

DQL条件查询

基础查询

基础查询
select 字段 from 表名;
查询全部数据
select * from 表名;
给字段取别名,as可以省略
select 字段 as 字段别名 from 表名;
去除重复数据
select distinct * from 表名;

条件查询

select 字段 from 表名 where 条件列表;

条件

比较运算符功能
>大于
>=大于等于
<小于
<=小于等于
=等于
!=或<>不等于
between…and…在某个范围之间(包含最大值,最小值)
in()在in之后列表选一个值都符合条件
like 占位符模糊匹配(_匹配单个字符,%匹配任意字符)
is null是空
逻辑运算符功能
and 或 &&并且(多个条件同时成立)
or或||或者(多个条件任意成立一个)
not 或!非,不是

DQL聚合函数

常见聚合函数

函数功能
count统计数量
max最大值
min最小值
avg平均值
sum求和
select 聚合函数(字段) from 表名;
null值不参与聚合函数的计算

DQL分组查询

select 字段 from 表名[where 条件] group by 分组字段 [having 分组后的过滤条件];

where与having的区别
    1.执行时机不同,where在分组前执行,having是在分组后执行
    2.判断条件不同,where不能对聚合函数进行判断,而having可以.

DQL排序查询

select 字段 from 表名 order by 字段1 排序方式1,字段2 排序方式2;
排序方式:
asc:升序(默认值,从小到大排序)
desc:降序(从大到小排序)
如果是多字段排序,当一个字段值相同时,才会根据第二个字段排序规则

DQL分页查询

select 字段 from 表名 limit 起始索引.查询记录数;
起始索引从0开始, 起始索引 = (查询页码-1) * 每页显示记录数

DQL编写顺序

select 字段 from 表名 where 条件 group by 分组字段 having 分组后条件列表 order by 排序字段列表 limit 分页参数

DCL语句

DCL是用来管理数据库用户,控制数据库的访问权限.

DCL用户管理

查询用户,用户信息存储在mysql数据库中的user表中
use mysql;  进入数据库
select * from user;
创建用户
create user '用户名'@'主机名' identified by '密码';
修改用户密码
alter user '用户名'@'主机名' identified with mysql_native_password by '新密码';
删除用户
drop user '用户名'@'主机名';

DCL权限控制

查询权限
show grants for 用户;
授予权限
grant 权限列表 on 数据库名.表名 to 用户;
撤销权限
revoke 权限列表 on 数据库名.表名 from 用户;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小莫4637

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值