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

关系数据库标准语言SQL(11,12)

目录

带有EXISTS谓词的子查询

exists谓词

例子

not exists谓词

例子

不同形式的查询间的替换

用EXISTS/NOT EXISTS实现全称量词

用EXISTS/NOT EXISTS:实现逻辑蕴涵

集合查询

并操作UNION

交操作INTERSECT

差操作EXCEPT

基于派生表的查询

select语句的基本格式


带有EXISTS谓词的子查询

exists谓词

EXISTS谓词代表存在量词,带有EXISTS谓词的子查询只返回逻辑真值“true”或逻辑假值“false'”

例子

【例】查询所有选修了1号课程的学生姓名。

SELECT Sname FROM Student  WHERE EXISTS(SELECT FROM SC WHERE Sno=Student.Sno AND Cno=1')

将student表里的数据一条一条带入到子查询中,看是不是选修了课程号1的。

使用存在量词EX1STS后,若内层查询结果非空,)则外层的WHERE子句返回真值;否则返回假值。

not exists谓词

若内层查询结果非空,则外层的WHERE子句返回假值,若内层查询结果空则外层的WHERE子句返回真值

例子

查询没有选修1号课程的学生姓名。

SELECT Sname FROM Student WHERE NOT EXISTS(SELECT FROM SC WHERE Sno Student.Sno AND Cno =1')

不同形式的查询间的替换

一些带EXISTS或NOT EXISTS谓词的子查询不能被其他形式的子查询等价替换;

所有带IN谓词、比较运算符、 ANY和ALL谓词的子查询都能完成对EXISTS谓词的子查询等价替换。

用EXISTS/NOT EXISTS实现全称量词

SQL语言中没有全称量词(For all)。可以把带有全称量词的谓词转换为等价的带有存在量词的谓词

用EXISTS/NOT EXISTS:实现逻辑蕴涵

SQL语言中没有蕴涵(Implication)逻辑运算,可以利用谓词演算将逻辑蕴涵谓词等价转换

p推出q,q推不出p。

集合查询

并操作UNION

SELECT * FROM Student WHERE Sdept='CS UNION SELECT FROM Student WHERE Sage≤=19

UNION:将多个查询结果合并起来,系统自动去掉重复元组

UNION ALL:将多个查询结果合并起来时,保留重复元组。

交操作INTERSECT

查询计算机科学系的学生氖年龄不大于19岁的学生的交集。

SELECT FROM Student WHERE Sdept='CS' INTERSECT SELECT FROM Student WHERE Sage<=19

差操作EXCEPT

【例】查询计算机科学系的学生与年龄不大于19岁的学生的差集。

SELECT FROM Student WHERE Sdept='CS'; EXCEPT SELECT FROM Student WHERE Sage<=19;

查询的结果在前面的集合里但不在后面的集合里。

基于派生表的查询

        子查询不仅可以出现在WHERE子句中,还可以出现在FROM子句中,这时子查询生成的临时派生表(derived table)成为主查询的查询对象。

        如果子查询中没有聚集函数,派生表可以不指定属性列,子查询SELECT子句后面的列名为其默认属性。

select语句的基本格式

SELECT [ALL / DISTINCTI<目标列表达式>[别名][<目标列表达式>[别名]

FROM<表名或视图名>[别名] <表名或视图名>[别名

WHERE<条件表达式>

[GROUP BY<列名>

[HAVING<条件表达式>

[ORDER BY<列名2>[ASC / DESC]

相关文章:

关系数据库标准语言SQL(11,12)

目录 带有EXISTS谓词的子查询 exists谓词 例子 not exists谓词 例子 不同形式的查询间的替换 用EXISTS/NOT EXISTS实现全称量词 用EXISTS/NOT EXISTS:实现逻辑蕴涵 集合查询 并操作UNION 交操作INTERSECT 差操作EXCEPT 基于派生表的查询 select语句的基本格式 带有…...

Oracle 11g RAC 节点异常重启问题分析

一、背景 在国庆期间巡检的时候&#xff0c;发现数据库alert日志中出现了异常重启的信息&#xff0c;当即对该报错进行分析处理。 二、处理过程 &#xff08;1&#xff09;数据库告警日志分析 node1 alert&#xff1a; Sat Oct 05 13:05:14 2024 Thread 1 advanced to log …...

vscode 中显示 pnpm : 无法加载文件 C:\Users\AppData\Roaming\npm\pnpm.ps1,因为在此系统上禁止运行脚本

vscode中运行pnpm报错 pnpm : 无法加载文件 C:\Users\AppData\Roaming\npm\pnpm.ps1&#xff0c;因为在此系统上禁止运行脚本 解决办法如下 1、用 get-ExecutionPolicy 命令在vscode终端查询状态 如果返回的是 Restricted &#xff0c;则说明是禁止的 2、用 set-ExecutionPolic…...

C嘎嘎入门篇:类和对象番外(时间类)

前文&#xff1a; 小编在前文讲述了类和对象的一部分内容&#xff0c;其中小编讲述过运算符重载这个概念以及一个时间类&#xff0c;当时小编讲的没有那么细致&#xff0c;下面小编将会讲述时间类来帮助各位读者朋友更好的去理解运算符重载&#xff0c;那么&#xff0c;代码时刻…...

Spring Boot项目实战教程:快速构建Web应用与RESTful API

目录 一、Spring Boot简介1、Spring Boot的定义2、Spring Boot的优势&#xff08;1&#xff09;快速开发&#xff08;2&#xff09;自动配置&#xff08;3&#xff09;微服务支持&#xff08;4&#xff09;无代码生成和XML配置&#xff08;5&#xff09;独立运行&#xff08;6&…...

OpenAI 开发者大会!实时语音功能有API了,GPT-4o支持多模态微调,上下文cache功能上线

家人们&#xff01;十一假期第1天&#xff0c; OpenAI一年一度的开发者大会又来了惹&#xff01;今年的开发者大会分成三部分分别在美国、英国、新加坡三个地点举办&#xff0c;刚刚结束的是第一场。 去年的OpenAI开发者大会公布了GPT-4 Turbo和GPTs&#xff0c;今年没有大更新…...

解决ros2 rviz Fixed Frame No TF data问题

新建一个终端&#xff0c;然后输入 &#xff1a;map后的数字可以任意&#xff0c;100也可以。注意map与框架名称一致。 rosrun tf2_ros static_transform_publisher 0.0 0.0 0.0 0.0 0.0 0.0 map 5...

Python数据分析篇--NumPy--进阶

人有一种天生的、难以遏制的欲望&#xff0c;那就是在理解之前就评判。 -- 米兰昆德拉 多维数组 1. 一维数组只有行&#xff0c;二维数组相比一维数组多了列这个维度&#xff0c;而三维数组则类似多个二维数组堆叠在一起&#xff0c;形如一个立方体。 二维数组的创建 1. 二…...

基于Arduino的宠物食物分配器

创作本文的初衷是本人的一个养宠物的梦想&#xff08;因为家里人对宠物过敏&#xff0c;因此养宠物的action一直没有落实&#xff09;&#xff0c;但是梦想总是要有的哈哈哈哈哈。上周正好是和一个很好的朋友见面&#xff0c;聊到了养宠物的事情&#xff0c;她大概是讲到了喂宠…...

make和Makefile

make是一个命令工具&#xff0c;用于读取并执行名为Makefile&#xff08;makefile&#xff09;的文件中定义的规则。 Makefile是一个文本文件&#xff0c;它告诉make哪些文件依赖于其他文件&#xff0c;以及如何从这些依赖项生成最终的目标文件。 我们先简单看一下使用make的…...

【数学分析笔记】第4章第4节 复合函数求导法则及其应用(2)

4. 微分 4.4 复合函数求导法则及其应用 【例4.4.3】 y e 1 cos ⁡ x ye^{\sqrt{1\cos x}} ye1cosx ​&#xff0c;求 y ′ y y′ 【解】 y ′ e 1 cos ⁡ x ⋅ 1 2 1 cos ⁡ x ⋅ ( − sin ⁡ x ) − sin ⁡ x 2 1 cos ⁡ x e 1 cos ⁡ x ye^{\sqrt{1\cos x}}\cdot\f…...

【预备理论知识——2】深度学习:线性代数概述

简单地说&#xff0c;机器学习就是做出预测。 线性代数 线性代数是数学的一个分支&#xff0c;主要研究向量空间、线性方程组、矩阵理论、线性变换、特征值和特征向量、内积空间等概念。它是现代数学的基础之一&#xff0c;并且在物理学、工程学、计算机科学、经济学等领域有着…...

【目标检测】yolo的三种数据集格式

目标检测中数据集格式之间的相互转换--coco、voc、yolohttps://zhuanlan.zhihu.com/p/461488682?utm_mediumsocial&utm_psn1825483604463071232&utm_sourcewechat_session【目标检测】yolo的三种数据集格式https://zhuanlan.zhihu.com/p/525950939?utm_mediumsocial&…...

数据分析案例-机器学习工程师薪资数据可视化分析

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…...

Django连接Dify、ChatGPT4o并计算tokens数量方法

通过Dify可以连接很多模型国内、国外的都可以进行选择可以到Dify里创建一个空白应用&#xff0c;然后点击进入就可以看到API了api_url "http://192.168.15.131/v1/chat-messages" api_key "app-UtzTpVNwpTLUcGvRNnnK9QNY" headers {"Authorization…...

面试系列-淘天提前批面试

00-淘天提前批面试 在牛客上看到了淘天提前批的面试题目&#xff0c;这里分析一下淘天面试的问了有哪些内容&#xff0c;面试的重点 是偏向哪些方面 项目相关 1、秒杀架构如何设计&#xff1f; 问了秒杀的架构如何设计&#xff0c;对于秒杀的设计&#xff0c;秒杀符合 写多读少…...

计算机中科学中有哪些空间换时间的操作??

计算机中科学中有哪些空间换时间的操作&#xff1f;&#xff1f; 1. SPOOLing (Simultaneous Peripheral Operations On-Line) 原理&#xff1a;SPOOLing 是一种将输入/输出操作缓存到磁盘或内存中的技术&#xff0c;从而在后台处理它们。这可以防止 CPU 等待慢速的外部设备&…...

Mac安装Manim并运行

1.在macOS上创建Python虚拟环境&#xff0c;可以使用venv模块&#xff0c;这是Python自带的库&#xff0c;也可以使用conda。以下是使用venv创建和使用Python虚拟环境的步骤&#xff1a; 打开终端。 创建一个新的目录来存放你的项目&#xff0c;并进入该目录&#xff1a; mk…...

leetcode58:最后一个单词的长度

给你一个字符串 s&#xff0c;由若干单词组成&#xff0c;单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大 子字符串 。 示例 1&#xff1a; 输入&#xff1a;s "Hello World" 输出&#xff…...

18448 最小生成树

### 思路 使用Kruskal算法求解图的最小生成树。Kruskal算法通过对所有边按权值排序&#xff0c;然后逐步选择最小权值的边&#xff0c;确保不会形成环&#xff0c;直到构建出最小生成树。 ### 伪代码 1. 读取输入的结点数n和边数m。 2. 读取每条边的信息&#xff0c;存储在边列…...

前端工程化 - Vue

环境准备 Vue-cli是Vue官方提供的一个脚手架&#xff0c;用户快速生成一个Vue的项目模板。 Vue-cli提供了如下功能&#xff1a; 统一的目录结构本地调试热部署单元测试集成打包上线 需要安装Node.js 安装Vue-cli npm install -g vue/cli通过vue --version指令查看是否安装成…...

使用 NVIDIA H100 上的 Azure 机密计算释放隐私保护 AI 的潜力

通过 NVIDIA H100 上的 Azure 机密计算释放隐私保护 AI 的潜力 文章目录 前言一、机密计算二、使用 NVIDIA H100 Tensor Core GPU 的 Azure 机密计算1. 安全功能2. 可扩展性和可编程性三、场景1. 模型机密性2. 推理/提示机密性3. 使用私有数据进行微调4. 多方培训结论前言 这是…...

目标检测与图像分类:有什么区别?各自的使用场景是什么?

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…...

Lua 数据类型

Lua 数据类型 Lua 是一种轻量级的编程语言&#xff0c;因其简单性和灵活性而广受欢迎。在 Lua 中&#xff0c;数据类型是编程的基础&#xff0c;它们决定了变量能够存储哪种类型的数据。Lua 的数据类型可以分为以下几个类别&#xff1a; 1. nil nil 是 Lua 中的一个特殊类型…...

复现文章:R语言复现文章画图

文章目录 介绍数据和代码图1图2图6附图2附图3附图4附图5附图6 介绍 文章提供画图代码和数据&#xff0c;本文记录 数据和代码 数据可从以下链接下载&#xff08;画图所需要的所有数据&#xff09;&#xff1a; 百度云盘链接: https://pan.baidu.com/s/1peU1f8_TG2kUKXftkpYq…...

东方仙盟——软件终端架构思维———未来之窗行业应用跨平台架构

一、创生.前世今生 在当今的数字化时代&#xff0c;我们的服务覆盖全球&#xff0c;拥有数亿客户。然而&#xff0c;这庞大的用户规模也带来了巨大的挑战。安全问题至关重要&#xff0c;任何一处的漏洞都可能引发严重的数据泄露危机。网络带宽时刻面临考验&#xff0c;稍有不足…...

支持向量机(SVM)基础教程

一、引言 支持向量机&#xff08;Support Vector Machine&#xff0c;简称SVM&#xff09;是一种高效的监督学习算法&#xff0c;广泛应用 于分类和回归分析。SVM以其强大的泛化能力、简洁的数学形式和优秀的分类效果而备受机器学 习领域的青睐。 二、SVM基本原理 2.1 最大间…...

Python小示例——质地不均匀的硬币概率统计

在概率论和统计学中&#xff0c;随机事件的行为可以通过大量实验来研究。在日常生活中&#xff0c;我们经常用硬币进行抽样&#xff0c;比如抛硬币来决定某个结果。然而&#xff0c;当我们处理的是“质地不均匀”的硬币时&#xff0c;事情就变得复杂了。质地不均匀的硬币意味着…...

京东web 京东e卡绑定 第二部分分析

声明 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 有相关问题请第一时间头像私信联系我删…...

【数据结构与算法】Greedy Algorithm

1) 贪心例子 称之为贪心算法或贪婪算法&#xff0c;核心思想是 将寻找最优解的问题分为若干个步骤每一步骤都采用贪心原则&#xff0c;选取当前最优解因为没有考虑所有可能&#xff0c;局部最优的堆叠不一定让最终解最优 贪心算法是一种在每一步选择中都采取在当前状态下最好…...