sql - SQL标准中是否存在INTERSECT运算符?
问题描述
SQL标准中是否存在INTERSECT运算符?如果存在,它是可选的运算符吗?
请留下一个可靠的来源。
解决方案
你的教授要么错了,要么你误解了他们所说的。并非每个SQL实现都支持 INTERSECT,但它是标准。
我查看了 Jim Melton 和 Alan R. Simon (1993) 撰写的“了解新 SQL:完整指南”,其中涵盖了 SQL-92。
第 171 页说:
INTERSECT 和 EXCEPT 运算符
INTERSECT 返回两个表的交集中存在的所有行;也就是说,在两个表中。
SELECT * FROM music_titles INTERSECT SELECT * FROM discontinued_albums;
例如,前面的查询将返回所有已停止发行且已重新发行的专辑。
这是 Google 图书的链接,其中在搜索中突出显示了 INTERSECT 一词:https ://www.google.com/books/edition/Understanding_the_New_SQL/ZOOMSTZ4T_QC?bsq=intersect&gbpv=1
我还检查了我的 Peter Gulutzan 和 Trudy Pelzer (1999) 的“SQL-99 Complete,Really”副本。它还记录了 INTERSECT。
推荐阅读
- macos - 为什么“监控”不监控我的流程?
- postgresql - 访问 jsonb 数组中元素的索引
- http - 如何提供 CSS 文件并进行动态路由?
- java - 重定向到外部网站,同时收到请求的任何错误
- swift - 试图让 API / URL 显示在我的 UILabel 文本中?
- xamarin.forms - 我们可以在 Visual Studio 或 Android Studio IDE 中构建基于 Xamarin 的 Android 系统应用程序吗?
- excel - 如何使 VBA 函数将 If, then 语句的结果输出到单元格?
- javascript - 在 Typescript 中返回动态编译时间类型?
- c# - EnableCorsAttribute 中缺少方法
- r - 带有 Observes 和 reactiveValues 的闪亮模块