MySQL知识点:基础知识点--SQL,DDL ,DML ,DQL ,DCL语法及使用方法

SQL分类

DDL:数据定义语言,用来定义数据库对象(数据库,表,字段)
DML:数据操作语言,用来对数据库中的数据进行,增,删,改
DQL:数据查询语言,用来查询数据库中的表结构
DCL:数据公职语言,用来创建数据库用户,控制数据库访问权限

DDL语句

一,查询

  1. 查询所有数据库:show databases;
  2. 查询当前数据库:select databases;

二,创建
create databases [if not exists] 数据库名 [default charset 字符集] [collate 排序规则]

三,删除
drop database [if exists] 数据库名;

四,使用
user数据库名;

五,表操作
1.查询

  • 查询当前数据库所有表:show tables;
  • 查询表结构:DESC 表名;
  • 查询指定表的建表语句:show create table 表明;

2.创建
语法结构

creat table 表名(
字段 1 字段1类型[comment 字段1注释],
字段 2 字段2类型[comment 字段2注释],
.
.
.
字段 n 字段n类型[comment 字段n注释]

)

3.数据类型
数值类型

分类类型描述
TINYINT小整数值
SMALLINT大整数值
MEDIUMINT大整数值
INT\ INTEGERji大整数值
BIGINT极大整数值
FLOAT单精度浮点值
DOUBLIE双精度浮点值
DECIMAL小数值(确定点数)

字符串类型

分类类型描述
CHAR定长字符
VACHAR变长字符
TINYTBLOB不超过255个字符的二进制数
TINYTEXT短文本字符串
BLOB二进制形式的文本数据
TEXT长文本数据
MEDIUMBLOB二进制形式的中等长度文本数据
MEDIUMTEXT中长度文本数据
LONGBLOB二进制形式的极大文本数据
LONGTEXT极大文本数据

日期类型

4.修改

  • 添加字段
    alter table 表名 add 字段名 类型(长度)[comment 注释][约束];
  • 修改数据类型
    alter table 表名 modify 字段名 新数据类型(长度);
  • 修改字段名
    alter table 表名 charge 旧字段 新字段名 类型(长度);
  • 删除字段
    alter table 表名 drop 字段名;
  • 修改表名
    alter table 表名 rename to 新表名;
  • 删除表
    drop table [if exists] 表名;
  • 删除指定表,并重新创建该表
    truncate table 表名;

DML语句

添加数据(insert)
修改数据(update)
删除数据(delete)

一、增加数据
1.给指定字段增加数据
insert into 表名(字段1,字段2)values(值1,值2);

2.给全部字段添加数据
insert into 表名(值1,值2…);

3.批量添加数据
insert into 表名(字段1,字段2)values(值1,值2)(值1,值2);
insert into 表名 values(值1,值2),(值1,值2);

二、修改数据
update 表名 set 字段名1=值1,字段名2,…【where 条件】;
【】可以有也可以没有

三、删除数据
delete from 表名【where 条件】

DQL语句

查询关键:select
一、基本查询
1.查询多个字段
select 字段1,字段2,字段3,…From 表名;
select *from 表名

2、设置别名
select 字段1【AS 别名】,字段2【AS 别名】…From 表名

3、去除重复记录
select disTinct 字段列表 From 表名;

二、条件查询
1、语法:select 字段列表 from 表名 where 条件列表
2、条件:比较运算,逻辑运算
条件列表

比较运算功能
>大于
>=大于等于
<小于
<=小于等于
=等于
<>或!=不等于
between…and在某个范围之内(包含最大最小)
in(…)在is之后的列表中的值,多选一
like 占位符模糊匹配(匹配单个字符,%匹配任意个字符)
is Null是Null

** 逻辑运算 **

逻辑运算符功能
AND或&&并且(多个特定条件同时成立)
OR或ll或着
NOT或!非,不是

三、聚合函数
1、介绍:将一列数据作为一个整体,进行纵向计算
2、常见聚合函数

函数功能
count统计数量
max最大值
min最小值
arg平均值
sum求和

2、语法:select 聚合函数(字段列表)from 表名;
注意:null值不参与所有聚合函数运算

四、分组查询
1、语法:select 字段列表 from 表名【where 条件】group by 分组字段名 【having 分组后过滤条件】
注意:where和having的区别

  • 执行时机不同:
    -where分组前进行过滤,不满足where条件不分组
    -having是分组后对结果进行过滤

  • 执行条件不同:where不能对聚合函数进行判断

  • 执行顺序:where>聚合函数>having
    分组后,查询字段一班为聚合函数和分组字段,查询其他字段也无任何意义

五、排序顺序
1、语法:select 字段列表 from 表名 Order by 字段1,排序1,字段2,排序2
2、排序方式:

  • ASC:升序
  • DESC:降序
    注:如果是多字段排序,当第一个字段值相同时,才会根据第二个字段进行排序

六、分页查询
1、语法:select 字段列表 from 表名 limit 起始索引,查询记录数;
注:

  • 索引从零开始,起始索引=(查询页码-1)*每页显示记录数
  • 分页查询时数据库方言,不同数据库有不同实现
  • 如果查询的时第一页数据,起始索引可以省略,直接简写为limit 9

执行顺序
From 表名列表
Where 条件列表
group up 分组字段列表
having 分组后条件
select 字段列表
order by 排序字段列表
limit 分页参数

DCL语句

一、管理用户
1、查询用户
use mysql;
select * from user;
2、创建用户
create user ‘用户名’ @ ‘主机名’ idntified by ‘密码’;
3、修改密码
alter user ‘用户名’ @ ‘主机名’ idntified with MySQL -native-password by ‘新密码’;
4、注册用户
drop user ‘用户名’ @ ‘主机名’;
二、权限控制
1、查询权限
show grants for ‘用户名’ @ ‘主机名’;
2、授予权限
grant 权限列表 on 数据库名.表名 to ’用户名‘ @ ’主机名‘;
3、撤销权限
revoke 权限列表 哦那数据库.表名 from ’用户名‘ @ ’主机名‘;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值