当前位置: 首页 > news >正文

T-SQL的多表查询

        前面讲述过的所有查询都是基于单个数据库表的查询。如果一个查询需要对多个表进行操作,就称为联接查询,联接查询的结果集或结果称为表之间的联接。 联接查询实际上是通过各个表之间共同列的关联性来查询数据的,它是关系数据库查询最主要的特征。

表联接类型

表联接类型可以分为内联接,外联接和交叉联接等。

1.内联接

        内联接(igmgr join)是最常用的一种联接方式,只返回两个数据集合之间匹配关系的行,将位 于两个互相交叉的数据集合中重叠部分以内的数据行联接起来。

        内联接使用比较运算符进行表间某(些)列数据的比较操作,并列出这些表中与联接相匹配的数据行。

 

2.外联接

外联接(outer join)是对内联接的扩充,除了将两个数据集合中重复部分以内的数据行联接起 来之外,还可以根据要求返回左侧或右侧表中非匹配的数据或全部的数据。

外联接分为以下几种:

(1)左外联接 左外联接(left join 或 left outer join)的结果集包括左表的所有行。如果左表的某一行在右表中没有匹配行,则右表返回空值,否则返回相应值。

(2)右外联接 右外联接(right join 或right outer join)是左外联接的反向联接,将返回右表的所有行,如果右 表的某一行在左表中没有匹配行,则左表返回空值,否则返回相应值。

(3)全联接/完整外联接 全联接/完整外联接(full join或full outer join)将返回左表和右表中的所有行.当某一行在另 一个表中没有匹配行时,另一个表返回空值,否则返回相应值。

根据联接查询的两个数据集合按照其出现位置的不同,可以将两个表分别定义为左侧表(左表)和右侧表(右表)。

3.交叉联接

交叉联接就是表之间没有任何关联条件,查询将返回左表与右表挨个联接的所有行,就是左表 中的每行与右表中的所有行再一一组合,相当于两个表“相乘”。

实验案例:

84acbf99c0514579a1af3f2cce77b43d.pngf6b629d8e8f1443a97ac41cfa032721d.png

需求描述

1>在products表和sales表中查询产品的名称,种类、成本、销售地点和销售价格。

2>在products表和sales表中查询销往海南的产品名称、种类、成本和销售价格。

2>在products表和sales表中查询销往北京的蔬菜名称、种类、成本和销售价格。

 

1/在products和sales表中查询产品的名称、种类、成本、销售地点和销售价格。

select products.名称 名称products,products.种类 种类products,products.成本 成本products,sales.销售地点 销售地点sales,sales.销售价格 销售价格sales
from products inner join sales on products.名称=sales.名称

5876251ac47a4760b2e47e156fe32531.png

 

2/查询销往海南的产品名称、种类、成本和销售价格。

select products.名称 名称products,products.种类 种类products,products.成本 成本products,sales.销售价格 销售价格sales
from products inner join sales on products.名称=sales.名称
where 销售地点='海南'

d5f7f7fb8db54dc590a2295183608e7c.png

 

3/查询销往北京的蔬菜名称、种类、成本和销售价格。

select products.名称 名称products,products.种类 种类products,products.成本 成本products,sales.销售价格 销售价格sales
from products inner join sales on products.名称=sales.名称
where 销售地点='北京'

bde3c5aaec28414f95e1100d7ccabdbf.png

 

 

 

相关文章:

T-SQL的多表查询

前面讲述过的所有查询都是基于单个数据库表的查询。如果一个查询需要对多个表进行操作,就称为联接查询,联接查询的结果集或结果称为表之间的联接。 联接查询实际上是通过各个表之间共同列的关联性来查询数据的,它是关系数据库查询最主要的特征…...

适合学生备考的护眼台灯有哪些?五款公认优质台灯推荐

根据近两年的卫计委数据统计,我国的近视率全球第一。其中小学生平均近视率36%,初中平均近视率71.6%,高中生平均近视率81%。看到这些数据真让作为家长的我们触目惊心。 而这里面,先天的遗传近视并不多,很多的学生近视都…...

机器人学英语

我的prompt i want to you act as an english language teacher/asistant to help me study english, you could teach me in such a way: you ask me questions and i answer them, and you help me correct the grammer or word mistakes in my expression and polish my par…...

51综合程序03-DS1302时钟

文章目录 DS1302时钟芯片一、DS1302时钟芯片的工作原理1. 芯片特点2. 引脚说明3. 寄存器地址4. 读数据的时序图5. 写数据的时序图 二、综合实例LCD1602显示 DS1302时钟芯片 一、DS1302时钟芯片的工作原理 1. 芯片特点 实时计算年、月、日、时、分、秒、星期,直到2…...

redis的缓存击穿,缓存穿透,缓存雪崩

Redis是一个开源的、内存中的数据结构存储系统,它可以用作数据库、缓存和消息代理。Redis支持多种数据结构,如字符串、哈希表、列表、集合和有序集合。此外,Redis还支持各种操作,如读取和写入数据、删除和更新数据等。 Redis的特点…...

AutoHotKey-study

目录 使用编辑器脚本注意函数解释信息调试方法键盘获取方法脚本练习 最近发现常用键盘的上下左右箭头去操作输入输出问题感觉很不是滋味,不像Linux那样,有vim的使用,就想着有没有什么方法更快捷,更方便的去使用电脑键盘&#xff0…...

Go to do list

go 语言中怎么实现分布式系统? 在Go语言中实现分布式系统需要考虑以下几个方面: 通信协议:在分布式系统中,各个节点需要通过网络进行通信。Go语言提供了丰富的网络编程库,如net/http、net/rpc等,可以方便…...

JWT 认证机制

1. Session 认证的局限性 Session 认证机制需要配合 Cookie 才能实现。由于 Cookie 默认不支持跨域访问,所以,当涉及到前端跨域请求后端按口的时候,需要做很多额外的配置,才能实现跨域 Session 认证。 注意: 1&#xf…...

内核启动时间信息打印

文章目录 一 串口打印1 借助串口助手2 dmesg自带时间3 内核显示时间信息4 借助initcall_debug二 图形花显示1 bootgraph工具使用2 Bootchart工具使用3 Grabserial工具使用一 串口打印 1 借助串口助手 2 dmesg自带时间 root@xboard:~# dmesg [ 0.000000] Booting Linux on …...

Web端专业级H264/H265 直播流播放器实现-JessibucaPro播放器

概况 这个主要是参加“深圳 liveVideoStack” 的ppt的文字版的分享。 深圳 liveVideoStack 讲师介绍 关于Jessibuca 官网地址:jessibuca.comDemo: DemoDoc:DocGithub地址:Github 关于JessibucaPro 地址:JessibucaProDemo: …...

macOS sandbox 文件夹授权

macOS sandbox 文件夹授权 macOS如果想上苹果市场发布的话,那么必须要遵守苹果的沙盒协议,这样应用的存储默认都是沙盒路径,隔离了用户的文件系统,那么这个时候我需要访问 /User/xxx/Library/Developer/ 这种文件夹的时候,直接访问是会被拒绝的,那既然这样就肯定要授权了…...

CentOS 7安装Java 8

前言 这是我在这个网站整理的笔记,有错误的地方请指出,关注我,接下来还会持续更新。 作者:神的孩子都在歌唱 要在CentOS 7上安装Java 8,请按照以下步骤操作: 打开终端并以root身份登录。 更新系统软件包: …...

施密特正交

描述 给出一个向量组原始基,通过施密特正交化、单位化,构造出标准正交基。 输入 本题有多组测试数据。每组测试数据在第一行给出两个正整数t,n,表示有t个n维向量。随后t行每行给出n个实数表示一个向量。 输出 每行输出一个向量…...

视频号小店怎么起量?实操详解!

我是电商珠珠 视频号小店于22年由视频号团队发展起来,跟抖音小店一样,都是电商平台。 目前对于视频号小店来说,正是风口期,就像19年的抖音小店一样,月入5w是没一点问题的。 去年的视频号小店还没有掀起多大的波浪&a…...

如何将unity项目托管到github(快速便捷)

如何将unity项目托管到github(快速便捷) 文章目录 如何将unity项目托管到github(快速便捷)前置准备Gitgithubgit-lfs 具体操作1.配置.gitignore文件2.配置.gitattributes3.使用git 前置准备 Git github git-lfs 这些内容省略&…...

ClickHouse(16)ClickHouse日志引擎Log详细解析

日志引擎系列 这些引擎是为了需要写入许多小数据量(少于一百万行)的表的场景而开发的。 这系列的引擎有: StripeLogLogTinyLog 共同属性 引擎: 数据存储在磁盘上。 写入时将数据追加在文件末尾。 不支持突变操作,也就是更新…...

opencv项目开发实战--填补字母的空白

目录 完成/填写字母 OpenCV C++ 完成opencv表中缺失的行 如何使用 OpenCV 获取图像中所有文本的位置? 完成/填写字母 OpenCV C++ 解决方案一: 您似乎已经对图像进行了...

Wnmp本地搭建结合内网穿透实现远程访问本地Wnmp服务

文章目录 前言1.Wnmp下载安装2.Wnmp设置3.安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4.固定公网地址访问 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 人工智能学习网站, 通俗易懂&a…...

C++ 红黑树的封装

一.map/set的封装 在实现了红黑树的部分功能后,我们可以便可以将红黑树作为底层结构来封装map 和 set ,但是问题也随之而来。我们都知道map是k-v的数据模型,而set是k的数据模型,我们难道要去使用两棵红黑树来封装吗?显…...

MongoDB快速入门及其SpringBoot实战

MongoDB快速入门及其SpringBoot实战 MongoDB简介 MongoDB 是一个基于分布式文件存储的数据库。由 C 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个开源、高性能、无模式的文档型数据库,当初的设计就是用于简化开发和方便扩展&am…...

基于MCP协议构建垂直领域AI知识服务:猴头菇茶MCP服务器实战

1. 项目概述与核心价值最近在折腾AI Agent的开发,发现一个挺有意思的项目,叫jackrain19743/hou-tea-mcp-server。乍一看这个名字,可能会有点摸不着头脑,“hou-tea”是啥?其实这是一个基于Model Context Protocol&#…...

3PEAK思瑞浦 TPA2772-VS1R MSOP8 运算放大器

特性 供电电压:3V至36V 偏移电压:在25C时最大3.5mV 轨到轨输入和输出 带宽:4.6 MHz 噪声容限:-良好,THD0.0008% 低噪声:1kHz时53nV/vHz 零交叉输入: -优异的总谐波失真加噪声:0.0008%...

从‘Hello World’到打开PRT文件:一个完整的NX C++外部exe开发入门实战(VS2015 + NX12)

从‘Hello World’到打开PRT文件:一个完整的NX C外部exe开发入门实战(VS2015 NX12) 在工业设计领域,NX(原Unigraphics)作为一款功能强大的CAD/CAM/CAE软件,其二次开发能力为工程师提供了极大的…...

3步解锁网易云音乐NCM文件:ncmdump让你的音乐自由播放

3步解锁网易云音乐NCM文件:ncmdump让你的音乐自由播放 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的加密NCM文件无法在其他设备播放而烦恼吗?ncmdump作为一款专业的网易云音乐NCM文件…...

告别Arduino IDE:用Python玩转ESP8266,保姆级Micropython固件烧录与点灯实战

从Arduino到Micropython:用Python解锁ESP8266的物联网潜能 当硬件爱好者第一次接触Arduino时,往往会被其简单的开发方式所吸引。但随着项目复杂度提升,C/C的编译等待、内存管理和语法冗长开始成为创新路上的绊脚石。这就是为什么越来越多的开…...

大模型动态计算:按需推理更高效

一种让大语言模型更智能地思考难题的方法 这项新技术使大语言模型能够根据问题的难度,动态调整用于推理的计算量。 为了使大语言模型在回答较难问题时更加准确,研究人员可以让模型花费更多时间来思考潜在解决方案。但是,赋予大语言模型这种能…...

深入理解 Tool Use 机制:AI Agent Harness Engineering 如何调用外部工具

深入理解 Tool Use 机制:AI Agent Harness Engineering 如何调用外部工具 引言 背景介绍 相信所有使用过大模型的开发者都遇到过这些典型痛点:问ChatGPT“今天北京的气温是多少”,它会告诉你“我的知识截止到2023年10月,无法提供实时天气信息”;让它计算“12345.67 * 9…...

保姆级教程:手把手教你用微信小程序+路由器搞定远程开机(WOL),告别NAS/台式机耗电

零成本实现远程开机:微信小程序路由器WOL全攻略 每次出门忘传文件还得折返开机?NAS全天候运转电费飙升?今天教你用家里现成的路由器微信小程序,三步搞定远程开机。无需公网IP、不用买硬件,看完就能让电脑随叫随醒。 1.…...

HEIF Utility:Windows平台HEIF格式兼容性完整解决方案实战

HEIF Utility:Windows平台HEIF格式兼容性完整解决方案实战 【免费下载链接】HEIF-Utility HEIF Utility - View/Convert Apple HEIF images on Windows. 项目地址: https://gitcode.com/gh_mirrors/he/HEIF-Utility 对于使用iPhone或iPad的Windows用户而言&a…...

5分钟解锁浏览器Markdown阅读新体验:告别文档查看烦恼

5分钟解锁浏览器Markdown阅读新体验:告别文档查看烦恼 【免费下载链接】markdown-viewer Markdown Viewer / Browser Extension 项目地址: https://gitcode.com/gh_mirrors/ma/markdown-viewer 你是否经常需要查看技术文档、API说明或学习笔记,却…...