mysql 查询

news2024/11/16 19:51:28


-- 多表查询

select * from tb_dept,tb_emp;

内来链接

-- ===================内连接 ========================
-- A 查询员工的姓名 , 及所属的部门名称 (隐式内连接实现)
   select tb_emp.name,tb_dept.name from  tb_emp,tb_dept where tb_emp.id=tb_emp.id;

-- 推荐使用
    select a.name,b.name from  tb_emp a, tb_dept b  where a.dept_id= b.id;

-- B 查询员工的姓名 , 及所属的部门名称 (显示内连接实现)
select  tb_emp.name ,tb_dept.name from tb_emp inner join tb_dept on tb_emp.id=tb_dept.id;

 外链接

-- =====================外连接=============
-- A  查询 员工的所有 员工的姓名  和对应的部门名称 (左外链接)
select r.name,t.name  from  tb_emp r left join tb_dept t on r.dept_id=t.id;

-- B  查询 部门的所有名称 和对应的员工姓名 (右外链接)
 select e.name,d.name from  tb_emp e right join tb_dept d on e.dept_id=d.id;

 子查询

-- =================== 子查询====================
  -- 表量子查询
 -- A 查询 "教研部" 的 所有员工信息
 -- a 查询 "教研部"的部门的ID-tb_dept
select  id from tb_dept  where name ='教研部';
 -- b  查询在 "房东白" 入职之后的员工 信息- tb_emp
select * from tb_emp r where r.dept_id =2;
select * from tb_emp r where r.dept_id =(select  id from tb_dept  where name ='教研部');

-- B  查询在 "房东白" 入职之后的员工 信息
-- a 查询 房东白的入职时间
select entrydate from  tb_emp r  where  r.name='方东白';

-- b 查询在 "房东白" 入职之后的员工 信息
select  * from tb_emp f where f.entrydate>(select entrydate from  tb_emp r  where  r.name='方东白');

例子查询


-- ==============子查询 =====================
-- A 查询 "教研部" 和 '咨询部' 的所有员工信息
select id from tb_dept  where name='教研部'or name='咨询部';
 -- 根据ID查询 该部门下的员工信息
 select * from tb_emp v where v.dept_id=3 or v.dept_id=2;
 select * from tb_emp v where v.dept_id in (3,2);
-- 完整2   A 查询 "教研部" 和 '咨询部' 的所有员工信息
 select * from tb_emp v where v.dept_id in (select id from tb_dept  where name='教研部'or name='咨询部');

行子查询

-- ================行子查询 ===============
-- A 查询与 “韦一笑” 的入职日期 及 职位都相同的员工信息
-- a 先找出韦一笑 职位 入职时间
select   name, job, entrydate from  tb_emp g where g.name='韦一笑';
select  entrydate, job from  tb_emp g where g.name='韦一笑';

select * from tb_emp j where  j.job=2 and j.entrydate='2007-01-01';
select * from tb_emp j where j.entrydate='2007-01-01' and  j.job=2;
select * from tb_emp  where  (entrydate,job)=('2007-01-01',2);
select * from tb_emp  where  (entrydate,job)=(select  entrydate, job from  tb_emp g where g.name='韦一笑');

表子查询

-- =================表子查询============
-- A 查询入职时间 是 “ 2006-01-01” 之后 的员工信息 及其部门的名称·
    select * from tb_emp where  entrydate>'2006-01-10';
-- a 查询这部分员工信息及其部门名称 -
   select  e.* , d.name from  (select * from tb_emp where entrydate > '2005-01-10') e,tb_dept d where e.dept_id = d.id;

 

-- 1 查询价格低于 10元 的菜品的名称 、价格 及其 菜品的分类名称
select d.name,d.price, c.name from dish d, category c where d.price<10 and d.category_id= c.id;
 -- 2.查询所有价格在 10元(含)到50元(含)之间 且 状态为”起售”的菜品名称、价格及其分类名称
select d.name,d.price, c.name  from dish d  left join category c on d.category_id= c.id where d.price between 10 and 50 and d.status=1;
 -- 3 查询每个分类下最贵的菜品,展示出分类的名称、最贵的菜品的价格
 select c.name, max(d.price) from  dish d ,category c  where d.category_id =c.id group by  c.name;
 -- 4 查询各个分类下 菜品状态为“起售”,并且 该分类下菜品总数量大于等于3 的 分类名称
 select c.name ,count(*) from dish d ,category c where d.category_id=c.id and d.status=1 group by c.name having count(*)>3;

 -- 5.查询出“商务套餐A”中包含了哪些菜品 (展示出套餐名称、价格,包含的菜品名称、价格、份数
 select  s.name,s.price,d.name,d.price ,sd.copies from  setmeal s ,setmeal_dish sd, dish d where
  s.id=sd.setmeal_id and sd.setmeal_id=d.id and s.name='商务套餐A';
 -- 6查询出低于菜品平均价格的菜品信息(展示出菜品名称、菜品价格)
 select avg(price) from  dish  ;
select * from dish where price<37.736842;
select * from dish where price<(select avg(price) from  dish );

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

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

相关文章

树与二叉树堆:堆

堆的概念&#xff1a; 一般是把数组的数据在逻辑结构上看成一颗完全二叉树&#xff0c;如下图所示。 注意&#xff1a;别将C语言中的堆和数据结构的堆混为一谈&#xff0c;本文所讲的数据结构的堆是一种完全二叉树&#xff0c;而C语言中的堆其实是一种内存区域的划分 堆的分类…

OpenShift 4 - 部署 RHODS 环境,运行 AI/ML 应用(视频)

《OpenShift / RHEL / DevSecOps 汇总目录》 说明&#xff1a;本文已经在 OpenShift 4.14 RHODS 1.33 的环境中验证 文章目录 RHODS 简介安装 RHODS 环境运行环境说明用 RHODS Operator 安装环境创建 Jupyter Notebook 运行环境 开发调式 AI/ML 应用部署运行 AI/ML 应用视频参…

第十一章 目标检测中的NMS(工具)

精度提升 众所周知&#xff0c;非极大值抑制NMS是目标检测常用的后处理算法&#xff0c;用于剔除冗余检测框&#xff0c;本文将对可以提升精度的各种NMS方法及其变体进行阶段性总结。 总体概要&#xff1a; 对NMS进行分类&#xff0c;大致可分为以下六种&#xff0c;这里是依…

OSG文字-各种文字效果(边框、阴影及颜色倾斜)示例(2)

各种文字效果(边框、阴影及颜色倾斜)示例 各种文字效果(边框、阴影及颜色倾斜)示例的代码如程序清单9-2所示&#xff1a; 1. /* 各种文字效果(边框、阴影及颜色倾斜)示例 */ 2. osg::ref_ptr<osg::Camera> createAllKindText(const string &strDataFolder) 3. {…

火狐挂代理访问问题Software is preventing Firefox from safely connecting to this site

1、报错 Software is preventing Firefox from safely connecting to this site2、解决步骤 火狐浏览器访问http://burp&#xff0c;右上角有下载按钮下载下来证书文件 在 Firefox 中设置证书颁发机构 (CA) 验证

【在飞书捷径中用HTTP请求】

在飞书捷径的请求体中的变量&#xff0c;注意外面要有个双引号。

直播岗位认知篇

一、直播岗位概述 直播岗位&#xff0c;也称为直播主播或直播运营&#xff0c;是指在互联网直播平台上进行直播活动的工作岗位。该岗位的主要职责是通过直播形式&#xff0c;向观众展示自己的才艺、分享生活、销售产品或服务&#xff0c;并引导观众互动和参与。直播主播需要具…

渲染器——双端Diff算法

简单 Diff 算法利用虚拟节点的 key 属性&#xff0c;尽可能地复用 DOM 元素&#xff0c;并通过移动 DOM 的方式来完成更新&#xff0c;从而减少不断地创建和销毁DOM 元素带来的性能开销。但是&#xff0c;简单 Diff 算法仍然存在很多缺陷&#xff0c;这些缺陷可以通过双端 Diff…

GPU Microarch 学习笔记【3】Tensor Core

目录 1. 指令与架构 2. Load 3. 计算MMA 4. Set, Step 与thread group 5. OCTET 6. Tensor Core微架构 7. Final Nvidia自从Volta/Turing&#xff08;2018&#xff09;架构开始&#xff0c;在stream multi processor中加入了tensor core&#xff0c;用于加速矩阵计算。如…

c语言上机作业:迭代法求平方根

1.题目 设计一个函数func用迭代法编程求一个数的平方根。平方根的迭代公式为&#xff1a;牛顿迭代法&#xff0c;(要求前后两次迭代值求差的绝对值小于10的-9次方) 2.思路 a.这里要求我们设置一个函数能够完成牛顿迭代法&#xff0c;这里需要使用到函数迭代的知识&#xff0…

【Java 进阶篇】揭秘 Jackson:Java 对象转 JSON 注解的魔法

嗨&#xff0c;亲爱的同学们&#xff01;欢迎来到这篇关于 Jackson JSON 解析器中 Java 对象转 JSON 注解的详细解析指南。JSON&#xff08;JavaScript Object Notation&#xff09;是一种常用于数据交换的轻量级数据格式&#xff0c;而 Jackson 作为一款优秀的 JSON 解析库&am…

基于SSM的社区生鲜商城的设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

OpenAI 超 700 名员工联名逼宫董事会;ChatGPT 新功能“阅后即焚”丨 RTE 开发者日报 Vol.89

开发者朋友们大家好&#xff1a; 这里是 「RTE 开发者日报」 &#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE &#xff08;Real Time Engagement&#xff09; 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…

相对定位、绝对定位、固定定位、绝对定位堆叠顺序

相对定位&#xff1a;相对自己本身进行偏移 CSS语法&#xff1a; position: relative;/*相对自己进行定位*/ top: 10px;/*距离上边*/ left: 10px;/*距离左边*/ 演示图&#xff1a; 绝对定位&#xff1a;默认以浏览器进行定位。如果想依照父盒子定位&#xff0c;需要在父盒子…

SpringBean的配置详解

Bean的基础配置 例如&#xff1a;配置UserDaoImpl由Spring容器负责管理 <beanid"userDao"class"com.xfy.dao.Impl.UserDaoImpl"></bean> 此时存储到Spring容器中的Bean的beanName是userDao&#xff0c;值是UserDaoImpl&#xff0c;可以根据bea…

P2 C++变量

前言 一 C变量的作用 本期我们来讨论一下c 中的变量。 在一个 C 程序中&#xff0c;大部分内容实际上都是在使用数据。我们操作任何类型的数据&#xff0c;如包括我们想要改变、想要修改&#xff0c; 想要读和写数据。我们都需要把数据存储进叫做变量的东西里面。变量允许我们…

万字解析设计模式之桥接模式、外观模式

一、桥接模式 1.1概述 桥接模式是一种结构型设计模式&#xff0c;它的作用是将抽象部分和实现部分分离开来&#xff0c;使它们能够独立地变化。这样&#xff0c;抽象部分和实现部分可以分别进行扩展&#xff0c;而不会相互影响。它是用组合关系代替继承关系来实现&#xff0c;…

如何在AIX操作系统上修改Java环境变量

AIX操作系统是IBM的Unix操作系统&#xff0c;通常用于企业级应用和服务器环境。在AIX上配置Java环境变量是执行Java应用程序和开发Java代码的重要步骤。本文将详细介绍如何在AIX上修改Java环境变量&#xff0c;并提供具体示例来帮助你完成这个任务。 步骤1&#xff1a;确定Java…

vue3组件外使用route

1.vue3组件外使用route 在写vue3项目时&#xff0c;有时候我们会把组件内部分逻辑代码分离到外部js中&#xff0c;然后在组件里通过import导入。此时如果我们要在组件外使用route对象&#xff0c;方式与组件内不同&#xff1a; 组件内&#xff1a; import { useRoute } from…

CANopen权威指南【CAN总线协议】

1这个总线定义是老外发明的。 想要使用&#xff0c;就必须按照协议去配置数据帧。 CIA301和cia402协议&#xff0c;实际就是寄存器地址上某一段的定义。 下载地址&#xff1a; CAN in Automation (CiA): Technical documents 注册下载也是非常快的。【没什么难度】 就是资…