三张表学会MySQL的单表操作!

news2025/1/10 22:04:42

表单一信息 

1、查询表中所有学生的信息

mysql> select * from student;


2、 查询表中所有学生的姓名和英语成绩

mysql> select name,english from student;


 3、过滤表中的重复数据

mysql> select DISTINCT * from student;


4、统计每个学生的总分

mysql> select name,chinese+math+english AS total from student;


5、所有学生总分上加上10

mysql> select name,chinese+math+english+10 AS 'total+10' from student;


6、使用别名表示学生分数

mysql> select chinese AS 语文 ,math AS 数学,english AS 英语 from student;


7、查询英语成绩大于90分的所有同学

mysql> select name from student
-> where english>90;


8、查询总分大于200分的所有同学

mysql> select name from student
    -> where chinese+math+english > 200;


9、查询英语成绩在80到90之间的所有同学

mysql> select name from student
    -> where english BETWEEN 80 AND 90;


10、 查询英语成绩不在80到90之间的所有同学

mysql> select name from student
    -> where not(english>=80 and english<=90);


11、查询数学分数为89,90,91的同学

mysql> select name from student
    -> where math in(89,90,90);


12、查询数学分数不为89,90,91的同学

mysql> select name from student
    -> where math not in(89,90,90);

13、查询所有姓李的学生英语成绩

mysql> select english from student
    -> where name like '李%';


14、查询数学分80且语文80分的同学

mysql> select name from student 
    -> where math=80 and chinese=80;


15、查询英语80或者总分200的同学

mysql> select name from student
    -> where english=80 or chinese+math+english=200;


16、对学生数学成绩进行降序排序后输出

mysql> select math from student
    -> order by math DESC;

17、 对总分从高到低的顺序输出

mysql> select chinese+math+english total from student
    -> order by chinese+math+english DESC;


18、 对姓李的学生按总成绩升序排序输出

mysql> select chinese+math+english total from student
    -> where name like '李%'
    -> order by chinese+math+english;

19、查询男生和女生分别有多少人,并将人数降序输出

mysql> SELECT gender, COUNT(*) AS count
    -> FROM student
    -> GROUP BY gender
    ->ORDER BY count DESC; 


20、查询男生和女生分别有多少人,并将人数降序输出,并查询出大于9的性别人数信

mysql> select gender ,count(*) count from student
    -> group by gender
    -> HAVING count > 9
    -> ORDER BY count DESC;

 


表二信息

 1、按员工编号升序排列不在10号部门工作的员工信息

mysql> select * from emp 
-> where deptno != 10;


  2、 查询姓名第二个字母不是'A'且薪水大于1000元的员工信息,按薪水降序排列

mysql> select * from emp
-> where ename != '_A%' and sal <= 1000;


  3、按年薪+奖金降序排序

mysql> select ename,sal*12+COALESCE(comm,0) '年薪+奖金' from emp
    -> order by sal*12+COALESCE(comm,0) DESC;


  4、求每个部门的平均薪水
  5、求每个部门的最高薪水

4、5
mysql> select deptno,avg(sal),max(sal) from emp 
    -> GROUP BY deptno;


  6、求每个部门每个岗位的最高薪水并美观

mysql> select deptno,job,max(sal)
    -> from emp
    -> group by deptno,job
    -> order by deptno,max(sal) DESC;


  7、求平均薪水大于2000的部门编号

mysql> select deptno,avg(sal) from emp 
    -> group by deptno
-> having avg(sal) > 2000;


  8、将部门平均薪水大于1500的部门编号列出来,按部门平均薪水降序排列

mysql> select deptno,avg(sal) from emp
    -> group by deptno
    -> having avg(sal) >1500
-> order by avg(sal) desc;


  9、选择公司中有奖金和员工姓名和工资

mysql> select ename,sal from emp
-> where comm is not null;


  10、查询员工最高工资和最低工资的差距

mysql> select max(sal)-min(sal) from emp;


第三张表信息

1. 查询出部门编号为30的所有员工

mysql> select ename,deptno from emp
-> where deptno = 30;

2. 2.所有销售员的姓名、编号和部门编号。

mysql> select ename,empno,deptno from emp
-> where job = '销售员';

3. 找出奖金高于工资的员工。

mysql> select ename from emp
-> where comm > sai;

4. 4.找出奖金高于工资60%的员工。

mysql> select ename from emp
    -> where comm > sai*0.6;

 

 5.  找出部门编号为10中所有经理,部门编号为20中所有销售员

mysql> select * from emp 
-> where (deptno=10 and job='经理') or (deptno=20 and job='销售员');

6.找出部门编号为10中所有经理,部门编号为20中所有销售员,还有即不是经理又不是销售员但其工资大或等于20000的所有员工详细资料

mysql> select * from emp
    -> where (deptno=10 and job='经理')
    -> or (deptno=20 and job='销售员')
-> or (job!='经理' and job !='销售员' and sai >=20000);

 

 7.无奖金或奖金低于1000的员工。

mysql> select ename from emp
-> where comm < 1000 OR comm is null;

8.、查询名字由三个字组成的员工。
注意:一个汉字占三个字节

mysql> select ename from emp
-> where ename like '___';

 

OR

mysql> select ename from emp
-> where LENGTH(ename)=9;

 

9.查询2000年入职的员工。

mysql> select ename,YEAR(hiredate) from emp
-> where YEAR(hiredate)=2000;

10. 10。查询所有员工详细信息,用编号升序排序

mysql> SELECT * FROM emp
-> order by empno ;

 

11. 查询所有员工详细信息,用工资降序排序,如果工资相同使用入职日期升序排序

mysql> SELECT * FROM emp
    -> order by sai DESC,hiredate;

12.查询每个部门的平均工资

mysql> select deptno,avg(sai) from emp
-> group by deptno;

 

13.查询每个部门的雇员数量

mysql> select deptno,count(deptno) from emp
-> group by deptno;

14.查询每种工作的最高工资、最低工资、人数

mysql> select job,max(sai),min(sai),count(job) from emp
-> group by job;

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大语言模型高效训练基础知识:优化器AdamW和Adafator

Prerequsite:Adam优化算法 Adam优化算法很长一段时间都是比较主流的参数更新算法&#xff0c;也有很多变种&#xff0c;本文介绍在大模型训练过程中使用的AdamW和Adafator AdamW 原论文&#xff1a;Decoupled Weight Decay Regularization AdamW指的是Adam Weight Decay&#…

Mysql中默认自动事务autocommit关闭和开启方式、rollback回滚恢复数据的使用方法

文章目录 autocommit自动提交事物一、查看autocommit状态二、修改autocommit 状态的方式1、第一种方式2、修改mysql配置文件my.cnf 二、rollback回滚1、autocommit 开启1、autocommit 关闭 autocommit自动提交事物 MySQL 默认开启事务自动提交模式&#xff0c;每条 SOL 语句都…

深度神经网络知识蒸馏算法基础理论

知识蒸馏作为一种压缩方法&#xff0c;与剪枝、量化中直接在原模型上进行参数的剪枝或数据位宽的降低来压缩不同&#xff0c;知识蒸馏方法往往是通过将大模型上的精度转移到一个相对更小的模型上来完成对大模型的压缩。此处所说的大模型即知识蒸馏中的教师模型&#xff0c;而相…

【C语言】深入学习数组

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前正在回炉重造C语言&#xff08;2023暑假&#xff09; ✈️专栏&#xff1a;【C语言航路】 &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章对你…

进程间通信方法——匿名管道

什么是管道&#xff1f; 管道是Unix中最古老的进程间通信的形式。我们把从一个进程连接到另一个进程的一个数据流称为一个“管道” 什么是匿名管道 就是一个没有名字的管道。 #include <unistd.h> 功能:创建一无名管道 原型 int pipe(int fd[2]); 参数 fd&#xff1a;文…

韩信谋反解密-使用命名空间

开机故事&#xff1a; 另一个韩信 什么是命名空间 c里面也有这种困扰&#xff0c;名字的冲突&#xff0c; 特意使用命名空间&#xff0c;开发的时候都要给函数命名 就会有名字相同的时候。这样就会出现混乱 区分相同名字相同函数的这样一个功能 用法1. #include<string…

openGauss学习笔记-04 openGauss极简版单机主备安装部署

文章目录 openGauss学习笔记-04 openGauss极简版单机主备安装部署4.1 获取安装包4.1.1 下载对应平台的安装包4.1.2 解压安装包4.1.3 查看目录结构 4.2 准备软硬件安装环境4.2.1 硬件环境要求4.2.2 软件环境要求4.2.3 软件依赖要求 4.3 单机主备安装部署4.3.1 安装前准备4.3.2 单…

【网络安全带你练爬虫-100练】第11练:xpath快速定位提取数据

目录 一、目标1&#xff1a;使用etree解析数据 二、目标2&#xff1a;使用xpath爬取指定数据 三、目标3&#xff1a;提取指定数据 四、网络安全小圈子 一、目标1&#xff1a;使用etree解析数据 其余的不用过多介绍&#xff0c;前面的练习都给大家已经过了一遍 def get_page…

【沐风老师】3DMAX砖石墙地面生成工具插件使用方法详解

3dMax砖石墙地面生成工具插件&#xff0c;收集了一些用于创建石墙、石头路面和不规则石头图案的实用工具&#xff0c;以模拟墙壁和地面。脚本会自动烘焙法线贴图、AO贴图和高度贴图以供实时使用。 【主要特点】 1.可以生成真实的石墙、地面、不规则石块及石灰墙面&#xff0c;是…

4.5 x64dbg 探索钩子劫持技术

钩子劫持技术是计算机编程中的一种技术&#xff0c;它们可以让开发者拦截系统函数或应用程序函数的调用&#xff0c;并在函数调用前或调用后执行自定义代码&#xff0c;钩子劫持技术通常用于病毒和恶意软件&#xff0c;也可以让开发者扩展或修改系统函数的功能&#xff0c;从而…

oracle启动/关闭/查看监听+启动/关闭/查看数据库实例命令

启动oracle第一步启动监听&#xff0c;第二步启动数据库实例 &#xff08;1&#xff09;输入su oracle进入oracle用户状态 &#xff08;2&#xff09;这里的密码是你的root密码 1 启动/关闭/查看监听命令 &#xff08;1&#xff09;启动监听—— lsnrctl start &am…

C#学习之路-封装

封装 被定义为"把一个或多个项目封闭在一个物理的或者逻辑的包中"。在面向对象程序设计方法论中&#xff0c;封装是为了防止对实现细节的访问。 抽象和封装是面向对象程序设计的相关特性。抽象允许相关信息可视化&#xff0c;封装则使开发者实现所需级别的抽象。 C…

编码和调制

编码与调制 消息是以二进制的形式存放在数据当中的&#xff0c;这种数据的表现形式是信号&#xff0c;而信源发出的原始信号就叫做基带信号&#xff0c;基带信号又可以分为数字基带信号和模拟基带信号。 信号需要在信道中进行传输&#xff0c;信道分为模拟信道和数字信…

libdrm编译调试

本文主要介绍libdrm的代码下载、编译和调试的工作。新版本的libdrm不再采用configure && make的方式编译&#xff0c;而是改用meson && ninja编译方式&#xff0c;近些年很多多媒体的开源软件包的构建系统有向后者靠拢的趋势&#xff0c;典型的比如gstream及其…

16、SQL注入之查询方式及报错盲注

目录 前言SQL注入报错盲注补充: Access暴力猜解不出的问题? 前言 当进行SQL注入时&#xff0c;有很多注入会出现无回显的情况&#xff0c;其中不回显的原因可能是SQL语句查询方式的问题导致&#xff0c;这个时候我们需要用到相关的报错或盲注进行后续操作&#xff0c;同时作为…

进程间通信的介绍

目录 进程间通信的目的 进程间通信发展 进程间通信分类 进程间通信的分析 进程间通信的目的 数据传输&#xff1a;一个进程需要将它的数据发送给另一个进程资源共享&#xff1a;多个进程之间共享同样的资源。通知事件&#xff1a;一个进程需要向另一个或一组进程发送消息&a…

PWM+RC 滤波的DAC 输出的数学理论

PWM示意图 PWM 本质上其实就是一种周期一定&#xff0c;占空比可调的方波。典型PWM 波形如下 图所示&#xff1a; PWM分段函数 图中的PWM 波形可以用如下分段函数表示&#xff1a; 函数中&#xff1a;T 是单片机中计数脉冲的基本周期&#xff0c;也就是STM32F4 定时器的计数频率…

Couldn‘t find a tree builder with the features you requested: lxml

这是一个常见于Python爬虫代码的报错。 报错原因&#xff1a;BeautifulSoup的解析方法之一&#xff0c;xml&#xff0c;需要安装好lxml库才行 解决办法&#xff1a;安装 lxml 库即可。 pip install lxml 安装好之后&#xff0c;BeautifulSoup就能正常解析了。 然后&#xff…

RabbitMQ系列(26)--RabbitMQ实现高可用负载均衡

前言&#xff1a;我们以往只能连接一个指定的队列&#xff0c;不能自由地连接其他的队列&#xff0c;当我们连接的那个指定队列宕机了&#xff0c;生产者和消费者都没办法往队列发送消息和消费消息&#xff0c;而且生产者和消费者也不能自动的连接到其他正常运行的队列&#xf…

嵌入式开发--XW09A触摸芯片的使用

XW09A触摸芯片 XW09A是厦门市芯网电子科技有限公司出品的一颗触摸芯片&#xff0c;支持9键多点触摸&#xff0c;I2C接口&#xff0c;带中断引脚。 以下摘抄自芯片手册 极高的灵敏度&#xff0c;可穿透13mm 的玻璃&#xff0c;感应到手指的触摸 超强的抗干扰和ESD 能力,不加任何…