MySQL---通用语法及分类

目录

一、SQL通用语法 

二、 SQL分类

1.DDL

 1.1 DDL数据库操作

 1.2 DDL表操作---查询

 1.3 DDL表操作---创建​编辑

 1.4 DDL表操作---数据类型

 1.5 DDL表操作---修改

 1.6 DDL表操作---删除

 1.7 DDL总结

2. 图形化界面工具DataGrip

 2.1 创建

 2.2 使用

3. DML

 3.1 DML介绍 

 3.2 DML---添加数据 

 3.3 DML---修改数据

 3.4 DML---删除数据 

 3.5 DML总结

4. DQL 

4.1 DQL介绍

4.2 DQL语法

 4.2.1 基本查询

 4.2.2 条件查询 

 4.2.3 聚合函数

 4.2.4 分组查询

 4.2.5 排序查询

 4.2.6 分页查询 

4.3 DQL案例练习 

4.4 DQL---执行顺序  

4.5 DQL总结 

5. DCL 

 5.1 DCL介绍

 5.2 DCL---管理用户

 5.3 DCL---权限控制

 5.4  DCL总结

一、 SQL通用语法 

二、 SQL分类

1.DDL

1.1 DDL数据库操作

1.2 DDL表操作---查询

1.3 DDL表操作---创建

创建并查询如下所示: 

 

1.4 DDL表操作---数据类型

 char(50)-->性能好        用户名 username varchar(50)

varchar(50)-->性能较差        性别 gender char(1)

 

命令如下所示:  

create table emp (
    id int comment '编号',
    workno varchar(10) comment '工号',
    name varchar(10) comment '姓名',
    gender char(1) comment '性别',
    age tinyint unsigned comment '年龄',
    idcard char(18) comment '身份证号',
    entrydate date comment '入职时间'
)comment '员工表';

创建并查看输出如下: 

1.5 DDL表操作---修改

修改并查看如下所示: 

 

 

1.6 DDL表操作---删除

  

1.7 DDL总结

2. 图形化界面工具DataGrip

破解教程如下:

DataGrip 2024.1.2 最新激活码,破解版安装教程(亲测有效) - 犬小哈教程

2.1 创建

2.2 使用

3. DML

3.1 DML介绍 

3.2 DML---添加数据 

3.3 DML---修改数据

输出如下所示: 

3.4 DML---删除数据 

命令如下所示: 

 

3.5 DML总结

4. DQL 

4.1 DQL介绍

4.2 DQL语法

4.2.1 基本查询

创建表命令及输出如下所示:

--基本查询
--1.查询指定字段name,wonkno, age返回s
elect name, workno, age from emp;

--2.查询所有字段返回
select id,workno,name,gender,age,idcard ,workaddress,entrydate from emp;
select * from emp;

--3.查询所有员工的工作地址,起别名
slect workaddress as '工作地址' from emp;
select workaddress '工作地址' from emp;

--4,查询公司员工的上班地址(不要重复)
select distinct workaddress '工作地址' from emp;
4.2.2 条件查询 

命令如下所示: 

--条件查询
-- 1,查询年龄等于88的员工
select * from emp where age = 88;

--2.查询年龄小于20的员工信息
select * fron emp where age < 20;

--3.查询年龄小于等于28的员工信息
select * from emp where age <= 20;

--4,查询没有身份证号的员工信旦
select * from emp where idcard is null;

-- 5.查询有身份证号的员工信息
select * from emp where idcard is not null;

-- 6.查询年龄不等于88的员工信息
select * fron emp where age != 88;
select * from emp where age <> 88;

--7,查询年龄在15岁(包含)到28岁(包含)之问的员工信息
select * from emp where age >= 15 && age <= 20;
select * from emp where age >= 15 and age <= 20;

-- 8.查询性别为女且年龄小于25岁的员工信息
select * from emp where gender = ‘女’and age < 25;

-- 9.查询年龄等于18或20或48的员工信息
select * from emp where age = 18 or age = 20 or age =40;
select * from emp where age in(18,28,40);

-- 10.查询姓名为两个字的员工信息 _%
select * from emp where name like '__';

-- 11.查询身份证号最后一位是X的员工信思
slect * from emp where idcard like '%X';
select * from emp where idcard like '_____________X';
4.2.3 聚合函数

命令如下所示:  

--聚合函数
--1.统计该企业员工数量
select count(*) from emp;
select count(idcard) from emp;

-- 2.统计该企业员工的平均年龄
select avg(age) from emp;

-- 3.统计该企业员工的最大年龄
select max(age) from emp;

--4.统计该企业员工的最小年龄
select min(age) from emp;

-- 5,统计西安地区员工的年龄之和
select sum(age) from emp where workaddress =‘西安";
4.2.4 分组查询

命令如下所示:  

--分组查询
--1.根据性别分组,统计男性员工和女性员工的数量
select gender,count(*) from emp group by gender ;

--2.根据性别分组,统计男性员工和女性员工的平均年龄
select gender, avg(age) from emp group by gender ;

--3.查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于3的工作地址
select workaddress,count(x) address_count from emp where age < 45 group by wonkaddress having address_count >= 3;
4.2.5 排序查询

命令如下所示:  

--排序查询
-- 1.根据年龄对公司的员工进行升序排序
select * from emp order by age ase;
select * from emp order by age desc;
select * from emp order by age;

-- 2.根据入职时问,对员工进行降序排序
select  from emp order by entrydate desc;

--3,根据年龄对公司的员工进行升序排序,年龄相同,再按照入职时问进行降序排序
select * from emp order by ege ase , entrydate dese;
select * from emp order by age ase , entrydate asc;
4.2.6 分页查询 

命令如下所示:   

--分页查询
-- 1,查询第1负员工数据,每页展示10条记录
select * from emp linit 0,10;
select *fron emp linit 10;

--2,查询第2页员工数据,每页展示10条记录-------->(页码-1)*页展示记录数
select * from emp limit 10,10;

4.3 DQL案例练习 

----------------- DQL语句练习---------- 
-- 1-查询年龄为20,21,22,23岁的女性员工信息
select  from emp where gender ='女' and age in(20,21,22,23);

--2.查询性别为男,并且年龄在28-40岁(含)以内的姓名为三个字的员工
select * from emp where gender = '男' and age between 20 and 40 and name like '___';

--3.统计员工表中,年龄小于60岁的,男性员工和女性员工的人数
select gender, count(*) from emp where age < 60 group by gender;

--4.查询所有年龄小于等于35岁员工的姓名和年龄,并对查询结果按年龄升序排序,如果年龄相同按入职时间降序排序.
select name , age from emp where age <= 35 order by age asc , entrydate desc;

--5.查询性别为男,且年龄在29-48岁(含)以内的前5个员工信恩,对查询的结果按年龄升序排序,年龄相同按入职时间升序排序。
select * from emp where gender = '男' and age between 20 and 40 order by age asc ,entrydate ase limit 5 ;

4.4 DQL---执行顺序  

 命令如下所示:   

--查询年龄大于15的员工的姓名、年龄,并根据年龄进行升序排序
select name,age from emp where age > 15 order by age ase;

select name,age from emp e where e.age > 15 order by age ase;

select e.name,e.age from emp e where e.age > 15 order by age ase;

select e.name ename,e.age eage from emp e where eage > 15 order by age ase;#报错
select e.name ename,e.age eage from emp e where e.age > 15 order by age ase;

select e.name ename,e.age eage from emp e where e.age > 15 order by eage ase;

# from ...
# where ...
# select ...
# order by ...
# limit ...

4.5 DQL总结 

5. DCL 

5.1 DCL介绍

5.2 DCL---管理用户

 开发人员不必重点掌握,适合DBA(数据库管理员)

命令如下所示:    

--创建用户 itcast ,只能够在当前主机localhost访问,密码123456;
create user 'itcast'@'localhost" identified by "123456';

--创建用户 heima ,可以在任意主机访问该数据库,密码123456 ;
create user "heima'@'%' identified by "123456";

--修改用户heima的访问密码为1234;
alter user 'heima'@'%' identified with mysql_native_password by '1234";

--修改用户heima的访问密码为1234;
drop user 'itcast'@'localhost";

5.3 DCL---权限控制

 命令如下所示:    

--查询权限
show grants for 'heima'@'%;
--授予权限
grant all on itcast.* to 'heina'@'%';
--撤销权限
revoke all on itcast.* from 'heima'@'%';

5.4  DCL总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/643309.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言.数据结构.顺序表

1.顺序表的概念及结构 1.1线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构&#xff0c;常见的线性表&#xff1a;顺序表、链表、栈、队列、字符串… 线性表在逻辑上是线性结构&#xff0c;…

Golang net/http标准库常用方法(三)

大家好&#xff0c;针对Go语言 net/http 标准库&#xff0c;将梳理的相关知识点分享给大家~~ 围绕 net/http 标准库相关知识点还有许多章节&#xff0c;请大家多多关注。 文章中代码案例只有关键片段&#xff0c;完整代码请查看github仓库&#xff1a;https://github.com/hltfa…

面试八股之JVM篇3.6——垃圾回收——强引用、弱引用、虚引用、软引用

&#x1f308;hello&#xff0c;你好鸭&#xff0c;我是Ethan&#xff0c;一名不断学习的码农&#xff0c;很高兴你能来阅读。 ✔️目前博客主要更新Java系列、项目案例、计算机必学四件套等。 &#x1f3c3;人生之义&#xff0c;在于追求&#xff0c;不在成败&#xff0c;勤通…

LVS精益价值管理系统 LVS.Web.ashx SQL注入漏洞复现

0x01 产品简介 LVS精益价值管理系统是杭州吉拉科技有限公司研发的一款专注于企业精益化管理和价值流优化的解决方案。该系统通过集成先进的数据分析工具、可视化的价值流映射技术和灵活的流程改善机制,帮助企业实现高效、低耗、高质量的生产和服务。 0x02 漏洞概述 LVS精益…

全国数据库管理系统设计赛-人大金仓内核实训安排正式发布

作为数据库领域国家队&#xff0c;人大金仓积极响应国家战略&#xff0c;通过赛题设计、内核技术支撑及赛前培训等多方面&#xff0c;大力支持全国大学生计算机系统能力大赛-数据库管理系统设计大赛成功举办。目前第二届全国大赛正在火热报名中&#xff0c;各种奖项等你来拿&am…

RabbitMQ 发布订阅

RabbitMQ 发布订阅视频学习地址&#xff1a; 简单模式下RabbitMQ 发布者发布消息 消费者消费消息 Publist/Subscribe 发布订阅 在 RabbitMQ 中&#xff0c;发布订阅模式是一种消息传递方式&#xff0c;其中发送者&#xff08;发布者&#xff09;不会将消息直接发送到特 定的…

Linux文本处理三剑客(详解)

一、文本三剑客是什么&#xff1f; 1. 对于接触过Linux操作系统的人来说&#xff0c;应该都听过说Linux中的文本三剑客吧&#xff0c;即awk、grep、sed&#xff0c;也是必须要掌握的Linux命令之一&#xff0c;三者都是用来处理文本的&#xff0c;但侧重点各不相同&#xff0c;a…

Docker-镜像迁移的三种方式=>备份恢复公有仓库私有仓库

制作好的镜像要被别人使用&#xff0c;有三种方式&#xff1a; 1.先备份镜像&#xff0c;别人通过u盘或者其它方式拷贝后&#xff0c;再恢复镜像&#xff0c;这种方式比较麻烦 2.将制作的镜像上传到公共镜像仓库&#xff0c;被别人拉取后使用&#xff0c;但可能存在网络不通畅或…

嵩山为什么称为三水之源

三水指黄河、淮河、济河&#xff0c;这三条河流环绕在嵩山周边。 黄河横亘在嵩山北部&#xff0c;其支流伊洛河从西南方环绕嵩山&#xff0c;然后汇入黄河。济河&#xff0c;古称济水&#xff0c;源自济源王屋山&#xff0c;自身河道在东晋时代被黄河夺占&#xff0c;从此消失。…

【Spring MVC】_SpringMVC项目返回数据

目录 1. 注解使用示例 1.1 使用Controller注解 1.2 使用RestController注解 1.3 使用Controller与ResponseBody注解 2. 关于ResponseBody注解 前文已经介绍过使用Controller注解向前端返回一个HTML页面&#xff0c;接下来将介绍向前端返回数据。 关于Controller和RestCon…

算法金 | Dask,一个超强的 python 库

本文来源公众号“算法金”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;Dask&#xff0c;一个超强的 python 库 1 Dask 概览 在数据科学和大数据处理的领域&#xff0c;高效处理海量数据一直是一项挑战。 为了应对这一挑战&am…

初学者都能掌握的操作符(中)

&#xff08;1&#xff09;位操作符&#xff08;& | ^&#xff09; &&#xff1a;&#xff08;按二进制位“与”&#xff09; 也就是两个数的每一位二进制数按照 “与” 的算法&#xff0c;如下&#xff1a; int a 3 ,b 5 ; c a & b; 我们首先写出a和b的二进…

Java面试八股之Synchronized和ReentrantLock的区别

Synchronized和ReentrantLock的区别 实现级别&#xff1a; synchronized是Java的一个关键字&#xff0c;属于JVM层面的原生支持&#xff0c;它通过监视器锁&#xff08;Monitor&#xff09;来实现同步控制&#xff0c;无需手动获取和释放锁。 ReentrantLock是java.util.conc…

【Linux网络编程】传输层中的TCP和UDP(TCP篇)

【Linux网络编程】传输层中的TCP和UDP&#xff08;TCP篇&#xff09; 目录 【Linux网络编程】传输层中的TCP和UDP&#xff08;TCP篇&#xff09;TCP协议TCP协议段格式确认应答&#xff08;ACK&#xff09;机制&#xff08;保证可靠性&#xff09;超时重传机制连接管理机制理解T…

aws msk加密方式和问控制连接方式

msk加密方式 msk提供了两种加密方式 静态加密传输中加密 创建集群时可以指定加密方式&#xff0c;参数如下 aws kafka create-cluster --cluster-name "ExampleClusterName" --broker-node-group-info file://brokernodegroupinfo.json --encryption-info file:/…

ASP+ACCESS公司门户网站建设

【摘 要】随着计算机科学的发展&#xff0c;数据库技术在Internet中的应用越来越广泛&#xff0c;为广大网络用户提供了更加周到和人性化的服务。本文讲解了一个公司的网站的建设&#xff0c;它基于数据关联规则的公司个性化页面及动态数据生成案例&#xff0c;在网页方面&…

Kubeadm安装部署k8s集群、踩坑日常

背景 ​ Docker是一个非常流行的容器化平台&#xff0c;它可以让我们方便构建、打包、发布和运行容器化应用程序。但是&#xff0c;在生产环境中&#xff0c;我们可能需要处理成百上千个容器&#xff0c;需要更好的管理这些容器&#xff0c;这就是Kubernetes(K8S)的用武之地。…

利用大语言模型增强网络抓取:一种现代化的方法

本文将探讨大语言模型(LLMs)与网络抓取的集成&#xff0c;以及如何利用LLMs高效地将复杂的HTML转换为结构化的JSON。 作为一名数据工程师&#xff0c;我的职业生涯可以追溯到2016年。那时&#xff0c;我的主要职责是利用自动化工具从不同网站上获取海量数据&#xff0c;这个过…

网络模型-策略路由配置

在实际网络应用中&#xff0c;策略路由也是一种重要的技术手段。尽管在考试并不注重策略路由&#xff0c;但是实际上应用较多建议考生除了掌握基本的静态路由协议IP route-static&#xff0c;动态路由协议RIP、还要掌握如何配置策略路由。策略路由的基本原理:根据ACL定义的不同…

云界洞见:移动云服务开启技术创新与问题解决的新篇章

一、什么是移动云 移动云以“央企保障、安全智慧、算网一体、属地服务”为品牌支撑&#xff0c;聚焦智能算力建设&#xff0c;打造一朵智能、智慧、安全可信可控的云&#xff0c;提供更优质的算力服务&#xff0c;引领云计算产业发展。 那么下面博主带领大家了解移动云的优势所…