4.四大类(DDL、DML、DQL、DCL)
文章目录
- 4.四大类(DDL、DML、DQL、DCL)
- 4.1 DDL(数据定义语言)
- 数据库操作
- 查询表操作
- 创建表操作
- 修改表中字段
- 删除表中字段
- 删除表
- 4.2 DML(数据操作语言)
- 插入数据
- 修改数据
- 删除数据
- 4.3 DQL(数据查询语言)
- 基本查询
- 设置别名
- 去除重复记录
- 条件查询
- 聚合查询
- 分组查询
- 排序查询
- 分页查询
- 执行顺序
- 4.4 DCL(数据控制语言)
- 用户管理
- 权限控制
4.四大类(DDL、DML、DQL、DCL)
4.1 DDL(数据定义语言)
注意
:[…]为可选。
数据库操作
#查询所有数据库
show databases;#查询当前数据库
select database();#创建数据库
create database [if not exists] 数据库名 [default charset 字符集] [collate 排序规则];#删除数据库
drop database [if exists] 数据库名;#使用数据库
use 数据库名;
查询表操作
#查询当前数据库所有表
show tables;#查询表结构
desc 表名;#查询指定表的建表语句
show create table 表名;
创建表操作
#创建表
create table 表名(字段1 字段1类型[comment 字段1注释],字段2 字段2类型[comment 字段3注释],字段3 字段3类型[comment 字段3注释]
)[comment 表注释];
修改表中字段
#添加字段
alter table 表名 add 字段名 类型(长度)[comment 注释][约束];
删除表中字段
#删除表字段
alter table 表名 drop 字段名;
删除表
#删除表
drop table[if exists] 表名;#删除指定表,并重新创建该表
truncate table 表名;
4.2 DML(数据操作语言)
插入数据
#给指定字段添加数据
insert into 表名(字段名1,字段名2)
values
(值1,值2);
修改数据
#修改数据
update 表名
set 字段名1 = 值1,字段名2 = 值2
[where 条件];
删除数据
#删除数据
delete
from 表名
[where 条件];
4.3 DQL(数据查询语言)
基本查询
#查询多个字段
select 字段1,字段2,字段3
from 表名;#查询全部字段
select *
from 表名;
设置别名
#设置别名
select 字段1 as "别名1",字段2 as "别名2"
from 表名;
去除重复记录
select distinct 字段列表
from 表名;
条件查询
#按条件查询
select 字段列表
from 表名
where 条件列表;
聚合查询
1.介绍:将一列数据作为一个整体,进行纵向计算。
函数 | 功能 |
---|---|
count | 统计数量 |
max | 最大值 |
min | 最小值 |
avg | 平均值 |
sum | 求和 |
#求员工表中的平均年龄
select avg(emy_age)
from tb_emy
分组查询
#语法
select 字段列表
from 表名
[where 条件]
group by 分组字段名
[having 分组后的过滤条件];
#查询员工表中不同部门的人数
select dept_id,count(*)
from tb_emy
group by dept_id
where 与 having区别:
①执行时机不同:where是封装之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。
②判断条件不同:where不能对聚合函数进行判断,而having可以。
排序查询
#语法
select 字段列表
from 表名
order by 字段1 排序方式1,字段2 排序方式2;
#查询员工表中员工工资并按年龄降序排序
select emy_name,emy_age,emy_money
from tb_emy
order by emy_age desc
排序方式
①ASC:升序(默认)
②DESC:降序
注意:如果是多个字段排序,当第一个字段值相同时,才会根据第二个字段进行排序。
分页查询
#语法
select 字段列表
from 表名
limit 起始索引,查询记录数;
# 查询第一页员工信息,每页有两条
select *
from tb_emy
limit 0,2;
# 查询第二页员工信息,每页有两条
select *
from tb_emy
limit 2,2;
①起始索引式从0开始,起始索引 = (查询页码 - 1) * 每页显示记录数。
②分页查询是数据库的方言,不同的数据库有不同的实现,MySql是limit。
③如果查询的是第一页数据,起始索引可以省略,直接简写为limit 10。
执行顺序
4.4 DCL(数据控制语言)
用户管理
#查询用户
user mysql;
select * from user;#创建用户
create user '用户名'@'主机名' identified by '密码';#修改用户密码
alter user '用户名'@'主机名' identified with mysql_native_password by '新密码';#删除用户
drop user '用户名'@'主机名';
权限控制
#查询权限
show grants for '用户名'@'主机名';#授予权限
grant 权限列表 on 数据库.表名 to '用户名'@'主机名';#撤销权限
revoke 权限列表 on 数据库.表名 from '用户名'@'主机名';
4.四大类(DDL、DML、DQL、DCL)相关推荐
- Python|SQL详解之DDL|DML|DQL|DCL|索引|视图、函数和过程|JSON类型|窗口函数|接入MySQL|清屏|正则表达式|executemany|语言基础50课:学习(14)
文章目录 系列目录 原项目地址 第41课:SQL详解之DDL 建库建表 删除表和修改表 第42课:SQL详解之DML insert操作 delete 操作 update 操作 完整的数据 第43课:S ...
- DDL,DML,DQL,DCL概念
SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE ...
- MySQL 的DDL DML DQL DCL细节解析 知道这些就够了
SQL语言一共分为4大类:数据定义语言DDL,数据操纵语言DML,数据查询语言DQL,数据控制语言DCL 1.数据定义语言DDL(Data Definition Language) 对象: 数据库和表 ...
- MySQL(DDL DML DQL DCL)
文章目录 服务器 数据库 MySQL: 数据库软件 SQL: 结构化查询语句 DDL: 操作数据库和表 操作数据库 操作表 列数据类型 操作表的语法 DML: 操作表中的数据 where子句运算符 增 ...
- SQL分类:DDL/DML/DQL/DCL以及作用
sql分类 1 DDL(Data Definition Language:数据库定义语言,操作数据库,表(创建,删除,修改)) 2 DML(Data Manipulation Language:数据库 ...
- dml语句包括哪些_聊聊MySQL基本操作DDL,DML,DQL,DCL
本篇文章来回顾一下MySQL的基本操作之DDL,DML,DQL,DCL,每种操作都有各自不同的语法,常用的操作汇总如下. 一.DDL-数据定义语言 作用:数据定义语言主要用来定义数据库中的各类对象,包 ...
- MySql基础汇总-DDL DML DQL DCL,存储过程,事务,触发器,函数等
use testdb;-- /**********************************************一:数据库操作语言****************************** ...
- 浅析 ddl,dml,dql,dcl 概念定义
DDL(Data Definition Language)语句: 数据定义语言,主要是进行定义/改变表的结构.数据类型.表之间的链接等操作.常用的语句关键字有 CREATE.DROP.ALTER 等. ...
- 如何管理和使用哪些命令操作MySQL数据库?(基本操作,SQL语言,DDL,DML,DQL,DCL,Windows字符和图形界面MySQL安装)
文章目录 前言 一:数据库基本操作命令 1.1:MySQL常用管理操作是哪些? 1.2:查看数据库列表信息的命令是? 1.3:查看数据库中的数据表信息命令是? 1.4:显示数据表的结构(字段)命令是? ...
- Mysql的DDL DML DQL DCL
m代表长度(1-65) d代表保留少数位(0-30) 整数型 tinyint(m)1字节 取值范围(-128-+127) int(m)4字节 取值范围(大概20几亿) 浮点型 double(m,d)8 ...
最新文章
- 为你揭示最危害程序员职业生涯的三大观念
- 【数据库】关系型数据库优化操作
- deepblueai
- c语言中错误c2228,错误:C2228:''必须有class/struct/union
- 训练日志 2018.10.18
- 利用Python3发送邮件-亲测可行
- L1-033__040
- 机器学习笔记(十三):主成分分析法(PCA)
- PS-tenday-强大的画笔工具(手绘)
- pp模块常用表 sap_SAP财务常用的PP模块事务代码清单
- 软件项目经理应具备的素质和条件_IT项目经理必须具备的能力
- windows 7 如何调出快速启动栏
- UART串口通信软件推荐
- ES6之Promise基本用法
- 小米手机开启“启用MIUI优化”,导致Android Studio无法成功直接安装
- 孟岩:想抓住EOS的机会,从这四个方向入手吧!
- app冷启动与热启动原理,及启动优化
- php 1为false,false是1还是0
- ADB屏蔽知乎视频答案
- arduino蜂鸣器控制