MySql的DDL和DML和DQL的基本语法

MySql语法,分为四类,分别是DDL,DML,DQL,DCL四类,区别鉴于下表

SQL语句分类
解释命令

DDL

(数据定义语言)

定义管理数据对象,如数据库、数据表等create、drop、alter

DML

(数据操作语言)

        操作数据库对象中的数据insert、update、delete

DQL

(数据查询语言)

查寻数据库数据select

DCL

(数据控制语言)

管理数据库语言,包括管理权限及数据更改grant、commit、rollback

我们今天只看DDL、DML、DQL三种基本语法

DDL语句:

create:

-- 建库
create database 库名;

-- 建表
create table 表名(
    字段名1 地段类型,
    字段名2 地段类型,
    ...
    字段名n 地段类型
);

 drop:

-- 删库
drop database 库名;

-- 删表
drop table 表名;

alter:

-- 修改表名
alter table 旧表名 rename as 新表名;

-- 修改字段类型
alter table 表名 modify 字段名 类型;

-- 修改字段名、类型
alter table 表名 change 旧字段名 新字段名 类型;

-- 删除字段
alter table 表名 drop 字段名;

-- 增加字段
alter table 表名 add 字段名 类型; 

查看库、表

-- 进入库

use 库名;

-- 查看所有的库

show databases;

-- 查看所有的表

show tables;

-- 查询表结构

desc 表名;

show create table;

DML语句:

insert:新增数据

-- 新增一条数据

insert into 表名(字段名1,字段名2...字段名n) values (值1,值2...值n),(值1,值2...值n),(值1,值2...值n)....

insert into 表名 values (全字段所对应的值);

update:修改数据

-- 修改数据

update 表名 set 字段名=值,字段名=值... where 条件;

delete:删除数据

-- 删除数据,删除数据,不重置自增计数器

delete from 表名 where 条件;

delete from 表名;

-- 清空表、删除数据,重置自增计数器
truncate table 表名;
 

DQL语句:查询

select:查询

-- 查询表内所有数据

select * from 表名;

-- 查寻列出的字段

select 字段名1,字段名2...字段名n from 表名;

-- 起别名

select 字段名 as 别名

-- 去掉查询结果中重复的

select distinct 字段1 ,字段名2...字段名n from 表名;

带条件查询

select * from 表名;

-- 模糊查询

-- 前后模糊

select * from 表名 where 字段名 like '%条件%';

-- 前模糊

select * from 表名 where 字段名 like '%条件';

-- 后模糊

select * from 表名 where 字段名 like '条件%';

-- in关键字(查询的字段的值,至少与括号中的一个值相同)

select * from 表名 where 字段名 in (值1,值2...值n);

-- null查询(null做判断,不能用'=',要用'is')

select * from 表名 where 字段名 is null | is not null;

-- 分组查询

select * from 表名 group by 字段名 having 条件;

-- 排序(desc降序,asc升序,默认为升序)

select * from 表名 order by 字段名 desc|asc,字段名 desc|asc;

表联查

-- 等值联查

select * from 表1,表2 where 表1.字段名 = 表2.字段名;

--内联查询

select * from 表1 inner join 表2 on 表1.字段名 = 表2.字段名;

-- 外联查询

-- left join左外联

-- right join右外联

select * from 表1 left|right join 表2 on 表1.字段名 = 表2.字段名;

-- 链接查询

-- union 去重

-- union all 不去重

select * from 表名1;

union | union all

select * from 表名2;

-- where子查询

select * from A where a = (select a from B);

-- from子查询

select * from A inner join (select * from B)b on A.字段1 = b.字段1;

以上就是我对DDL,DML,DQL浅浅的理解,希望能帮助到和我一样刚接触数据库的萌新们

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值