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

postgresql-集合运算

postgresql-集合运算

  • 并集
  • 交集
  • 差集
  • 集合运算符的优先级

并集

在这里插入图片描述

create table excellent_emp(
year int not null,
emp_id integer not null,
constraint pk_excellent_emp primary key(year,emp_id)
);insert into excellent_emp values(2018,9);
insert into excellent_emp values(2018,11);
insert into excellent_emp values(2019,9);
insert into excellent_emp values(2019,20);
/** union* distinct 将合并后的结果集进行去重;(数据量大的时候影响性能)* all 保留结果集中的重复记录* 默认是distinct* */
select e.emp_id 
from excellent_emp e
where e."year" =2018
union distinct 
select 
e.emp_id 
from excellent_emp e
where e."year" = 2019;

在这里插入图片描述

交集

在这里插入图片描述

-- 2018和2019连续获得优秀员工称号的员工
/** intersect 返回两个查询结果中的共同部分,* 即同时出现在第一个查询结果和第二个查询结果中的数据* distinct 将合并后的结果集进行去重* all 保留结果集中的重复记录* */
selecte.emp_id
fromcps.public.excellent_emp e
wheree."year" = 2018
intersect distinct 
selecte2.emp_id
fromcps.public.excellent_emp e2
wheree2."year" = 2019;

在这里插入图片描述

差集

在这里插入图片描述

/** 2019年获得优秀员工称号的新晋优秀员工* except:返回出现在第一个查询结果中,但不在第二个查询结果中的数据* distinct 将合并后的结果集进行去重* all 保留结果集中的重复记录* 默认是distinct*/
selecte.emp_id
fromexcellent_emp e
wheree."year" = 2019
except 
selecte2.emp_id
fromexcellent_emp e2
wheree2."year" = 2018;

在这里插入图片描述

集合运算符的优先级

-- 相同的运算符,前后按照顺序执行的
select *
from (values(1)) t1(n)
union
select * 
from (values(1)) t2(n)
union all
select * from (values(1)) t3(n);

在这里插入图片描述

-- 不同的运算符,intersect 的优先级高于 union 和 except
select *
from (values(1)) t1(n)
union all
select * 
from (values(1)) t2(n)
intersect
select * from (values(1)) t3(n);

在这里插入图片描述

-- 使用括号可以修改集合操作的执行顺序,先执行有括号的,再执行无括号
(select *
from (values(1)) t1(n)
union all
select * 
from (values(1)) t2(n))
intersect
select * from (values(1)) t3(n);

在这里插入图片描述

相关文章:

postgresql-集合运算

postgresql-集合运算 并集交集差集集合运算符的优先级 并集 create table excellent_emp( year int not null, emp_id integer not null, constraint pk_excellent_emp primary key(year,emp_id) );insert into excellent_emp values(2018,9); insert into excellent_emp value…...

[持续更新]计算机经典面试题基础篇Day2

[通用]计算机经典面试题基础篇Day2 1、单例模式是什么,线程安全吗 单例模式是一种设计模式,旨在确保一个类只有一个实例,并提供全局访问点。通过使用单例模式,可以避免多次创建相同的对象,节省内存资源,同…...

C++:类和对象(二)

本文主要介绍:构造函数、析构函数、拷贝构造函数、赋值运算符重载、const成员函数、取地址及const取地址操作符重载。 目录 一、类的六个默认成员函数 二、构造函数 1.概念 2.特性 三、析构函数 1.概念 2.特性 四、拷贝构造函数 1.概念 2.特征 五、赋值…...

Java“牵手”京东商品详情数据,京东商品详情API接口,京东API接口申请指南

京东平台商品详情接口是开放平台提供的一种API接口,通过调用API接口,开发者可以获取京东商品的标题、价格、库存、月销量、总销量、库存、详情描述、图片等详细信息 。 获取商品详情接口API是一种用于获取电商平台上商品详情数据的接口,通过…...

Fluidd摄像头公网无法正常显示修复一例

Fluidd摄像头在内网正常显示,公网一直无法显示,经过排查发现由于url加了端口号引起的,摄像头url中正常填写的是/webcam?actionsnapshot,或者/webcam?actionstream。但是由于nginx跳转机制,会被301跳转到/webcam/?ac…...

【C++ 学习 ⑳】- 详解二叉搜索树

目录 一、概念 二、实现 2.1 - BST.h 2.2 - test.cpp 三、应用 四、性能分析 一、概念 二叉搜索树(BST,Binary Search Tree),又称二叉排序树或二叉查找树。 二叉搜索树是一棵二叉树,可以为空;如果不…...

Java中网络的基本介绍。网络通信,网络,ip地址,域名,端口,网络通信协议,TCP/IP传输过程,网络通信协议模型,TCP协议,UDP协议

- 网络通信 概念:网络通信是指通过计算机网络进行信息传输的过程,包括数据传输、语音通话、视频会议等。在网络通信中,数据被分成一系列的数据包,并通过网络传输到目的地。在数据传输过程中,需要确保数据的完整性、准…...

【Qt】总体把握文本编码问题

在项目开发中,经常会遇到文本编码问题。文本编码知识非常基础,但对于新手来说,可能需要花费较长的时间去尝试,才能在脑海中建立对编码的正确认知。文本编码原理并不难,难的是在项目实践中掌握正确处理文本编码的方法。…...

Linux命令(77)之curl

linux命令之curl 1.curl介绍 linux命令之curl是一款强大的http命令行工具&#xff0c;它支持文件的上传和下载&#xff0c;是综合传输工具。 2.curl用法 curl [参数] [url] curl参数 参数说明-C断点续传-o <filename>把输出写到filename文件中-x在给定的端口上使用HT…...

详解 sudo usermod -aG docker majn

这个命令涉及到几个 Linux 系统管理的基础概念&#xff0c;包括 sudo、usermod 和用户组管理。我们可以逐一地解析它们&#xff1a; sudo: sudo&#xff08;superuser do&#xff09;允许一个已经被授权的用户以超级用户或其他用户的身份执行一个命令。当使用 sudo 前缀一个命令…...

大数据课程L2——网站流量项目的算法分析数据处理

文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 了解网站流量项目的算法分析; ⚪ 了解网站流量项目的数据处理; 一、项目的算法分析 1. 概述 网站流量统计是改进网站服务的重要手段之一,通过获取用户在网站的行为,可以分析出哪些内…...

jar包或exe程序设置为windows服务

最近在使用java和python制作客户端时突发奇想&#xff0c;是否能够通过一种方法来讲jar包和exe程序打包成windows服务呢&#xff1f;简单了解了一下是可以的。 首先要用到的是winSW&#xff0c;制作windows服务的过程非常简单&#xff0c;仅需几步制作完成&#xff0c;也不需要…...

数据结构--- 树

(一)知识补充 定义 树是一种数据结构,它是由n(n≥0)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。​ 它具有以下的特点: 每个节点有零个或多个子节点; 没有父节点的节点称为根节点;每一个非根…...

两个pdf文件合并为一个怎么操作?分享pdf合并操作步骤

不管是初入职场的小白&#xff0c;还是久经职场的高手&#xff0c;都必须深入了解pdf&#xff0c;特别是关于pdf的各种操作&#xff0c;如编辑、合并、压缩等操作&#xff0c;其中合并是这么多操作里面必需懂的技能之一&#xff0c;但是很多人还是不知道两个pdf文件合并为一个怎…...

Zookeeper简述

数新网络-让每个人享受数据的价值 官网现已全新升级—欢迎访问&#xff01; 前 言 ZooKeeper是一个开源的、高可用的、分布式的协调服务&#xff0c;由Apache软件基金会维护。它旨在帮助管理和协调分布式系统和应用程序&#xff0c;提供了一个可靠的平台&#xff0c;用于处理…...

1、Flutter移动端App实战教程【环境配置、模拟器配置】

一、概述 Flutter是Google用以帮助开发者在IOS和Android 两个平台开发高质量原生UI的移动SDK&#xff0c;一份代码可以同时生成IOS和Android两个高性能、高保真的应用程序。 二、渲染机制 之所以说Flutter能够达到可以媲美甚至超越原生的体验&#xff0c;主要在于其拥有高性…...

stride与padding对输出尺寸的计算

公式&#xff1a; 练习&#xff1a; 图1&#xff1a; input4&#xff0c;filter3&#xff0c;padding0&#xff0c;stride1 output2 图2&#xff1a; input5&#xff0c;filter3&#xff0c;padding0&#xff0c;stride2 output2 图3&#xff1a; input6&#xff0c;filter3&am…...

Excel VSTO开发2 -建立Excel VSTO项目

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 2 建立Excel VSTO项目 新建项目&#xff0c;选择Excel 2013和2016 VSTO外接程序。输入项目名称&#xff08;本示例的项目名称为&am…...

chrome插件:一个基于webpack + react的chrome 插件项目模板

项目结构 $ tree -L 1 . ├── README.md ├── node_modules # npm依赖 ├── package.json # 详细依赖 ├── pnpm-lock.yaml ├── public # 里边包含dist&#xff0c;安装的时候安装这个目录即可 ├── src …...

Vue:组件缓存

组件缓存 keep-alive 文章目录 组件缓存 keep-alive一、keep-alive是什么二、keep-alive优点三、问题四、解决方案五、代码示例 六、回顾一下钩子七、总结 一、keep-alive是什么 keep-alive是Vue中的一个内置组件&#xff0c;会缓存不活动的组件实例。并不会销毁组件&#xff…...

Amphenol ICC ND9ACC2E0A线束组件应用解析与国产兼容思路

在工业互连和高速设备快速发展的今天&#xff0c;线束组件的重要性已经远远超过传统意义上的“导线连接”。尤其是在服务器、工业控制、通信设备以及智能制造领域&#xff0c;高性能线束已经成为保障系统稳定运行的重要组成部分。 近期&#xff0c;Amphenol ICC&#xff08;Com…...

unplugin-dts完整指南:从vite-plugin-dts迁移到通用插件

unplugin-dts完整指南&#xff1a;从vite-plugin-dts迁移到通用插件 【免费下载链接】unplugin-dts An unplugin for generating declaration (dts) files. 项目地址: https://gitcode.com/gh_mirrors/vi/unplugin-dts unplugin-dts是一款功能强大的通用插件&#xff0c…...

【流体】基于matlab二维稳态不可压缩层流通道流利用FVM和SIMPLE 解平行板间层流的速度、压力和温度【含Matlab源码 15558期】

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;欢迎来到海神之光博客之家&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49…...

生产环境救急指南:当Navicat连不上时,用MongoDB Shell命令行搞定一切

生产环境救急指南&#xff1a;当Navicat连不上时&#xff0c;用MongoDB Shell命令行搞定一切 凌晨三点&#xff0c;服务器告警突然响起——某个关键服务因数据库查询超时而崩溃。你迅速打开Navicat准备排查&#xff0c;却发现生产环境的安全策略早已屏蔽了所有图形化工具的直接…...

5分钟快速上手:Akagi麻将AI助手完整实战指南

5分钟快速上手&#xff1a;Akagi麻将AI助手完整实战指南 【免费下载链接】Akagi 支持雀魂、天鳳、麻雀一番街、天月麻將&#xff0c;能夠使用自定義的AI模型實時分析對局並給出建議&#xff0c;內建Mortal AI作為示例。 Supports Majsoul, Tenhou, Riichi City, Amatsuki, with…...

黑苹果配置终极简化:OpCore Simplify三步搞定OpenCore EFI

黑苹果配置终极简化&#xff1a;OpCore Simplify三步搞定OpenCore EFI 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为复杂的黑苹果配置而烦恼吗…...

《病隙碎笔》生病卧床的日子,才知道拥有健康身心的时刻是多么宝贵

《病隙碎笔》生病卧床的日子&#xff0c;才知道拥有健康身心的时刻是多么宝贵 史铁生&#xff08;1951/1/4-2010/12/31&#xff09;&#xff0c;作家&#xff0c;散文家&#xff0c;代表作有《我与地坛》《命若琴弦》《奶奶的星星》等。 湖南文艺出版社 文章目录《病隙碎笔》生…...

Office RibbonX Editor:免费开源的Office界面定制终极指南

Office RibbonX Editor&#xff1a;免费开源的Office界面定制终极指南 【免费下载链接】office-ribbonx-editor An overhauled fork of the original Custom UI Editor for Microsoft Office, built with WPF 项目地址: https://gitcode.com/gh_mirrors/of/office-ribbonx-ed…...

Keil编译器数据类型详解与嵌入式开发实践

1. 变量范围查询指南&#xff1a;Keil编译器数据类型详解 作为一名嵌入式开发老手&#xff0c;我深知在Keil环境下编程时&#xff0c;准确掌握各种数据类型的取值范围是多么重要。今天就来系统梳理C51/C166/C251编译器中的数据类型范围问题&#xff0c;这些经验都是我在实际项目…...

通过Taotoken模型广场对比不同模型在代码生成任务上的效果与成本

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 通过Taotoken模型广场对比不同模型在代码生成任务上的效果与成本 对于开发者而言&#xff0c;选择合适的代码生成模型需要在效果、…...