尚硅谷MYSQL(5-6章)

排序和分页 

排序

如果没有使用排序操作的话 查询出来的数据是按添加的顺序排序的

ORDER BY是来进行排序的 后面可以添加ASC升序 DESC降序

如果后面没有显示指明排序的方式的话 则默认按照升序排序

7186a13c52e84b4a991860a6a37b285f.png

where中不能使用列的别名

ee8a65ba300947db8e582aeb584f5595.png

我们在使用sql语句的时候 她的执行顺序不是从第一条开始的 而是从from语句开始 

先看从哪个表中拿出数据 然后看一下她过滤出什么来了 再看select中的需要哪几个字段

这样你才可以定义一个别名使用在order by中

声明:where需要声明在from后 order by 前面

e6c47178c15a4a0a9ad97596b531363d.png

多级排序的就是在第一种情况相同的时候 进行第二个条件排序

分页

2224a20c695f4c77b93354328301136e.png

分页显式公式 :(当前页数 -1 * 每页条数,每页条数

limit严格来说是有两个参数 位置偏移量和条目数 如果只有一个参数就是从0开始只有条目数

c56559609a03405b95b344bdc8235e2f.png

51c82afdb4f44f9bbf341de1265d58a7.pnga3d84062cb474d9aa0f81d0cbe30b135.png

14f7a4b5c53046ee922e693adcf1fa2c.png

8e075295b60e4ba4af74d9b5360fd490.png

多表查询

d86b29f55abd4504b92a23c97c78a75a.png

出现笛卡尔积的错误(每个员工都到每个部门工作过)

74a1763d6c3a4b309849229929f60a91.png

78f5b1933b6840a7a42de2cdae9ebfcf.png

笛卡尔积或者叫做交叉连接就是两个集合x和y x和y的所有可能组合 x*y

咱们的数学坐标系就是笛卡尔发明的 外国叫做笛卡尔坐标系

2c2f5d93d4854e068d5f31db8560326a.png

3c0ac95aaec04332b52b074b68e26a5c.png

多表查询的正确方式 需要有连接条件

0d75c3081023404782c4cab5e0f6a28c.png4f307df7f0104f25b8725a75f64c0194.png

如果要给表起别名的话 需要使用表的别名 如果使用原名的话就会报错

6479be6b53884b6786d59087d91b0ed9.png

84795301188e44c5b0c6a4f22f9f0157.png

多表查询的分类

等值连接vs非等值连接

非等值连接的例子

fd45a4a89f034e3a969353ba22ccd5d7.png

自连接vs非自连接

自连接

9b2ed047eb154804bed222f0c556fb8d.png

9aa208a5623b42809d3a8a572a2c46dd.png

内连接: 合并具有同一列的两个以上的表的行, 结果集中不包含一个表与另一个表不匹配的行
外连接: 两个表在连接过程中除了返回满足连接条件的行以外 还返回左(或右)表中不满足条件的
行 ,这种连接称为左(或右) 外连接。没有匹配的行时, 结果表中相应的列为空(NULL)。
如果是左外连接,则连接条件中左边的表也称为 主表 ,右边的表称为 从表 。
如果是右外连接,则连接条件中右边的表也称为 主表 ,左边的表称为 从表 。
在面试中 只要出现了 所有的这个字眼 就是外连接 
39e1f1cfb9824fe9ac3d8421f9114209.png
sql92实现内连接见上
sql92实现外连接:使用+ 不支持sql92的写法
3f7fa63a305742f3aa6482f375f93b1d.png
c6382c9e30a642e195ceb10125c0524e.png
使用sql99
8859e04aaf7743019ced1f6020a94508.png

右外连接

61bfd9553c094f26a1385452afe4fc5a.png
86199275bf8042b0975db3d42422fc13.png
中间是内连接 左边是左外连接 右边是右外连接 如果全部都有的话就是满外连接
3a6e948c335f49f4a6b564ee74cfae13.png
908f1ecf7a41464b9a71d5bdef47f1df.png
MySQL不支持full outer join (满外连接)

七种sql join的实现

union 会多一个去重的操作

union操作符比起union all操作符来说 union all操作符多了一个106 也就是一个公共的部分 

开发中 我们可以使用union all的话 就用union all 

比如下图要做一个满外连接的话 可以使用左上图和右下图来进行合并

8dac35609ff84d11afb57d099d53c18e.png8937a781ba344ca2b82fc6d3a413243a.pngc41b5f027609490595814d8f843daca3.png

270f51256f134a93a407d76076da57bb.png8fcde48087a846bd86934b63cc460f66.png

或者是左中堂图和右上图

8bf84b76db9b4824b09d8d4577dac511.png

sql99的新特性

自然连接

sql92中使用等值连接 将同时复合下面条件的连接起来 在sql99中可以使用新特性natural join

c0e5404b38b64a5899608584534c71b4.png

using连接

当我们进行连接的时候,SQL99还支持使用 USING 指定数据表里的 同名字段 进行等值连接。但是只能配合JOIN一起使用。比如

8ff09c993d034472ada96c2a689419fc.png.

0cf6c7dca08b40cc91faf93b2dc19e01.png

例题

eae0a2af20144cdabe07edab90e149c9.png

多表查询中 select后面的每个字段都要对应相应的表  并且题目的要求是所有的员工 所以需要看员工列表在哪一列 左边的话 就是用左外连接 

7e55609dbce8431a8e38a2aa981592bf.png

d26bb129b8ee41998d3048b2010fcd6d.png

sql90的语法(没有外连接的话可以使用sql92的语法)f57c06759cd24ee8b162722de7afbf3f.png

sql92的语法

22763ae9caff4134a7f0d1b99bc4bdf7.png

d58f36e4b6524a7dbca637a21b727386.png475112690662468887e62ae906fc8890.png8629d35454524aa698c80ee57b622c35.pngf557673f32d2456cac1c23a9d8389ea8.png

 第七题的话可以使用子查询 但是这里暂时不讲方式二就是使用的子查询

a004a07ba13f4386bee26e80a09b908c.png

0b85dca5574a4519951c2ebca594a437.pnga112402486254486ad436b73a8ca6bf5.png

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FastCopy文件快速复制v5.7.15

软件介绍 FastCopy文件快速复制工具。Windows平台上最快的文件复制、删除软件!功能强劲,性能优越!它是源于日本的高效文件复制加速软件,支持拖拽操作,三种不同HDD模式;支持通配符,任务管理/命令…

微信小程序保存图片到相册

申请权限 代码如下 wx.downloadFile({url: image, //仅为示例,并非真实的资源success(res) {// 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容if (res.statusCode 200) {consol…

XSS Game练习

1.Ma Spaghet 直接get传参 ?somebodyaaaa直接使用img标签 ?somebody<img%20src1%20onerror"alert(1337)">官方文档 应使用innertext&#xff0c;安全性更高 2.Jefff 通过代码可以知道是通过eval的代码执行&#xff0c;setTimeout中的内容表示在一秒后执行…

uniapp预览图片uni.previewImage图片放大

<image v-if"file.image!" :src"file.image" click"previewImage(file.image)"></image>file: {image: ,status: 1}, // 预览 图片previewImage() {uni.previewImage({current: 1,urls: [this.img] // 是个 数组 单张的&#xff08…

JAVA打车小程序APP打车顺风车滴滴车跑腿源码微信小程序打车系统源码

&#x1f697;&#x1f4a8;打车、顺风车、滴滴车&跑腿系统&#xff0c;一键解决出行生活难题&#xff01; 一、出行新选择&#xff0c;打车从此不再难 忙碌的生活节奏&#xff0c;让我们常常需要快速、便捷的出行方式。打车、顺风车、滴滴车系统&#xff0c;正是为了满足…

[C#]winform基于opencvsharp结合Diffusion-Low-Light算法实现低光图像增强黑暗图片变亮变清晰

【训练源码】 https://github.com/JianghaiSCU/Diffusion-Low-Light 【参考源码】 https://github.com/hpc203/Diffusion-Low-Light-onnxrun 【论文地址】 https://arxiv.org/pdf/2306.00306.pdf 【算法原理图】 【效果展示】 【测试环境】 vs2019 netframework4.7.2 …

ffmpeg采用gpu加速增加水印

1.环境需要 系统 windows10 ffmpeg&#xff0c;ffprobe 字体文件 python3以上版本 2.环境配置 从官网上下载ffmpeg版本https://github.com/BtbN/FFmpeg-Builds/releases&#xff0c;这里我用的是这个&#xff0c;解压之后里面包含ffmpeg&#xff0c;ffprobe&#xff0c;f…

【uniapp】vue3+vite配置tailwindcss

安装 npm install autoprefixer tailwindcss uni-helper/vite-plugin-uni-tailwind -Dautoprefixer &#xff1a;自动管理浏览器前缀的插件&#xff0c;可以解析css文件并且添加前缀到css内容里。uni-helper/vite-plugin-uni-tailwind: 将 Tailwind CSS 框架集成到使用 Vite 作…

Cesium天空盒子(Skybox)制作(js代码)和显示

介绍 在Cesium中&#xff0c;星空背景是通过天空盒子方式&#xff08;6张图片&#xff09;来显示的&#xff0c;原生的图片分辨率太低&#xff0c;本项目用于生成天空盒子的6张图片。最终生成的6个图片大小约为500kb(每个)&#xff0c;格式为jpg&#xff0c;总共的恒星数目约为…

最新保姆级Anaconda和Pycharm安装激活过程(2024最新版本)

Anaconda和Pycharm安装过程 Anaconda安装过程第一步第二步第三步第四步第五步第六步第七步第八步第九步Pycharm 安装过程&#xff1a;第一步第二步第三步第四步第五步第六步---激活过程第七步第八步第九步第十步第十一步第十二步第十三步第十四步Anaconda和Pycharm软件百度网盘…

Video视频抽帧和WebCodecs API视频抽帧介绍

目录 mp4Box抽帧 ffmpeg抽帧 video元素抽帧 WebCodecs 核心API 视频文件是一个容器&#xff0c;里面有很多不同的轨道信息。如&#xff1a;图像、声音、字幕等。而视频图像信息又是由一系列图片序列帧的集合。如10秒时长的视频&#xff0c;假设每秒30帧。那大概有300条图像…

大公报发表欧科云链署名文章:发行港元稳定币,建Web3.0新生态

欧科云链研究院资深研究员蒋照生近日与香港科技大学副校长兼香港Web3.0协会首席科学顾问汪扬、零壹智库创始人兼CEO柏亮&#xff0c;在大公报发布联合署名文章 ——《Web3.0洞察 / 发行港元稳定币&#xff0c;建Web3.0新生态》&#xff0c;引发市场广泛讨论。 文章就香港稳定币…

2024年【汽车驾驶员(技师)】考试报名及汽车驾驶员(技师)试题及解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 汽车驾驶员&#xff08;技师&#xff09;考试报名参考答案及汽车驾驶员&#xff08;技师&#xff09;考试试题解析是安全生产模拟考试一点通题库老师及汽车驾驶员&#xff08;技师&#xff09;操作证已考过的学员汇总…

【二分查找】--- 初阶题目赏析

Welcome to 9ilks Code World (๑•́ ₃ •̀๑) 个人主页: 9ilk (๑•́ ₃ •̀๑) 文章专栏&#xff1a; 算法Joureny 上篇我们讲解了关于二分的朴素模板和边界模板&#xff0c;本篇博客我们试着运用这些模板。 &#x1f3e0; 搜索插入位置 &#x1f4cc; 题目…

【RISC-V设计-12】- RISC-V处理器设计K0A之验证环境

【RISC-V设计-12】- RISC-V处理器设计K0A之验证环境 文章目录 【RISC-V设计-12】- RISC-V处理器设计K0A之验证环境1.简介2.验证顶层3.顶层代码4.模型结构4.1 地址映射4.2 特殊功能寄存器 5.模型代码6.运行脚本7.总结 1.简介 在前几篇文章中&#xff0c;分别介绍了各个模块的设…

VM下kali设置桥接网络

一、查看主机ip 1.winr输入cmd 2.进入终端输入ipconfig 3.查看ip 二、虚拟机网络设置 1.进入vm的虚拟网络编辑器 2.桥接网卡自己选&#xff0c;1是有线网卡2是无线网卡&#xff0c;选择记得点应用 3.虚拟机的网络适配器也要选择桥接模式 三、kali网络配置 1.打开kali终端编辑文…

【经典算法】BFS_最短路问题

1. 最短路问题介绍 最短路径问题是图论中的一类十分重要的问题。本篇文章只介绍边权为1(或边权相同)的最简单的最短路径问题。所谓边权&#xff0c;就是两点之间的距离。 这类问题通俗的说就是告诉你起点和终点&#xff0c;要你找出最短的路径或是最短路径是多少。 解决方法&…

精通C++ STL(五):list的介绍及使用

目录 ​编辑 list的介绍 list的使用 list的定义方式 list的插入和删除 push_front和pop_front push_back和pop_back insert erase list的迭代器使用 begin和end rbegin和rend list的元素获取 front和back list的大小控制 size resize empty clear list的操作函数 sort splic…

水利机械5G智能制造工厂物联数字孪生平台,推进制造业数字化转型

在当今这个科技日新月异的时代&#xff0c;水利机械行业正经历着一场深刻的变革&#xff0c;其中5G智能制造工厂物联数字孪生平台的引入&#xff0c;无疑是推动制造业数字化转型的重要驱动力。工业物联数字孪生平台是智能制造工厂的核心组成部分&#xff0c;它基于物理世界的真…