选择另一个表中不存在的值

2024-01-26

我有两张桌子

Table A:

ID
1
2
3
4

Table B:

ID
1
2
3

我有两个请求:

  • 我想选择表 A 中表 B 没有的所有行,在本例中是第 4 行。
  • 我想删除表 B 中没有的所有行。

我正在使用 SQL Server 2000。


你可以使用NOT IN:

SELECT A.* FROM A WHERE ID NOT IN(SELECT ID FROM B)

然而,同时我更喜欢NOT EXISTS:

SELECT A.* FROM A WHERE NOT EXISTS(SELECT 1 FROM B WHERE B.ID=A.ID)

还有其他选择,本文很好地解释了所有优点和缺点:

我应该使用 NOT IN、OUTER APPLY、LEFT OUTER JOIN、EXCEPT 或 NOT EXISTS 吗? http://www.sqlperformance.com/2012/12/t-sql-queries/left-anti-semi-join

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

选择另一个表中不存在的值 的相关文章

  • SQL 中的链表

    在 MySQL 数据库中存储链接列表的最佳方法是什么 这样插入就很简单 即 您不必每次都重新索引一堆内容 并且可以轻松地按顺序拉出列表 使用 Adrian 的解决方案 但不是增加 1 而是增加 10 甚至 100 然后可以按照要插入的内容之
  • MYSQL从另一个表插入id

    我有以下疑问 我有 2 张桌子 id customers 1 alan 2 beth 3 john and id id customers value 1 1 bar 2 1 foo 3 2 baz 示例 我需要在第二个表中添加值 alfa
  • 使用 java 中的准备好的语句插入自定义 SQL 类型

    我有一些自定义类型 它们基本上都是枚举 以下是它们的外观示例 CREATE TYPE card suit AS ENUM spades clubs hearts diamonds 我在 Java 中有一些准备好的语句 看起来像这样 Setu
  • 找到帖子链接、每个标签对应的相关标签并在用户级别进行回答

    继续我之前的question https stackoverflow com questions 60967044 retrieve count of total no of answers corresponding to each ta
  • 如何在 SQL 中引用自定义字段

    我正在使用 mssql 但在使用子查询时遇到问题 真正的查询相当复杂 但其结构与此相同 select customerName customerId select count from Purchases where Purchases c
  • WHERE 子句中的可选参数[重复]

    这个问题在这里已经有答案了 假设有一个具有 3 个参数的存储过程 在所有可能性中 我希望通过一个单一的方法来实现这一目标WHERE子句不会失去对 using 的控制 AND OR 太多了 Example Params CITY VARCHA
  • 查找至少有 2 名员工的部门

    我需要做sql问题将显示至少有 2 人的所有部门 SELECT department name FROM department INNER JOIN employee ON department id employee department
  • 将 2 个不同表中的 2 个值相乘

    我正在尝试使用 SQL 将值 X 乘以值 Y 值 X 位于表 A 中 B 位于表 B 中 我找不到这个问题的答案 表交易 ID Transaction ID Total Amount 1 001 1200 2 002 1500 3 003
  • 使用 C# 恢复数据库

    我正在尝试使用 Microsoft SqlServer Management Smo 将数据库从一台服务器恢复到另一台服务器 问题是我不断收到错误消息 指出找不到 MDF 文件 原因是它试图在 SQL 实例名称的数据文件夹中查找它的来源 而
  • 如何在 PL/SQL 中查找字符串中不同字符的数量和名称[重复]

    这个问题在这里已经有答案了 我对 PL SQL 很陌生 我需要获取字符串中不同字符的名称和计数 例如 如果我有一个字符串str helloexample 我需要获得不同字符的输出str i e heloxamp 我怎样才能做到这一点 您可以
  • plpgsql 中的伪加密() 函数采用 bigint

    我正在开发一个生成随机 ID 的系统 如答案 2 所示here https stackoverflow com questions 12575022 generating an instagram or youtube like ungue
  • 当表有聚集索引时,数据是如何存储的

    我发现了无数的帖子 开头都是这样的很多时候我遇到人们说 聚集索引根据聚集索引键对表内的数据进行物理排序 这不是真的 然后这些帖子继续描述它是如何通过链表或其他方式实际存储的 例如 这个post http sqlwithmanoj wordp
  • 使用连接字段的 SQL JOIN

    我有两个表 Table1 包含一列 该列构成 Table2 中列的部分值 例如 表1 XName 123456 表2 ZName ABC 123456 我需要创建一个与这些匹配的 JOIN 但是使用 MS SQL 2008 我在完成这项工作
  • FROM 子句中子查询末尾随机字母的含义 - SQL

    我终于成功将两个sql sum查询的结果求和了 这家伙迈出了一小步 我的问题与代码中的最后一个字符 Z 有关 SELECT SUM hr FROM SELECT SUM amount AS hr FROM Try again dbo tue
  • Oracle SQL 查询日期格式

    我总是对 ORACLE SQL 查询中的日期格式感到困惑 并花几分钟时间去谷歌 有人可以向我解释当数据库表中有不同格式的日期时解决问题的最简单方法吗 例如 我有一个日期列为 ES DATE 保存的数据为 27 APR 12 11 52 48
  • SQL 执行计划是基于架构还是数据,或者两者兼而有之?

    我希望这个问题不太明显 我已经找到了很多关于解释执行计划的好信息 但有一个问题我还没有找到答案 该计划 更具体地说是相对 CPU 成本 仅基于架构 还是数据库中当前的实际数据 我尝试对我的产品数据库中需要索引的位置进行一些分析 但正在使用我
  • 当我将 xx 添加到 mysql float 列时,结果错误,这是一个错误吗?

    我的mysql 5 6 16 我的餐桌信息 CREATE TABLE xxx uid int 11 NOT NULL money float 10 2 NOT NULL DEFAULT 0 00 real money float 10 2
  • 为什么 Sql Server 2000 上的 TSQL 对小数点的舍入不一致?

    我正在尝试计算美元金额的折扣百分比 在 50 的情况下 有时你会得到半分钱 我需要将其四舍五入到最接近的一分钱 在Sql中 我的计算如下 round retail 0 5 2 0 如果我采用以下值 我会得到不同的结果 4 39 2 49 不
  • 在自定义条件下清理 SQL

    我需要创建一个简单的搜索 但我无法使用 Sphinx 这是我写的 keywords input split s queries keywords each do keyword queries lt lt sanitize sql for
  • Postgresql 和 jsonb - 将键/值插入多级数组

    非常类似于这个帖子 https stackoverflow com questions 58959678 postgresql add key to each objects of an jsonb array 但我很难适应他们的解决方案

随机推荐

  • iOS 8.3 - 元视口初始比例低于 1.0 会导致方向变化时出现奇怪的内容缩放

    将我的 iOS 设备升级到 iOS 8 3 后 我注意到元视口初始缩放属性出现了一些奇怪的行为 如果我将初始比例设置为 1 0 以下 并在浏览网页时旋转设备 则整个内容将逐渐变小 最终浏览器将崩溃 我注意到 每次方向变化时内容变小的程度与您
  • Firebase 实时数据库:如何在键值对上正确建立索引

    Question 我有这个 Firebase 实时数据库 groupUsers group1key user1key admin group2key user1key admin user2key readonly user3key rea
  • #1005 - 无法创建表“table_name”(错误号:150)

    这是我的表格 DROP TABLE IF EXISTS tbl comments CREATE TABLE IF NOT EXISTS tbl comments id int 11 NOT NULL auto increment topic
  • 在 python 端动态调整 kivy 标签(和按钮)的大小

    如何在运行时根据文本量动态调整标签或按钮的大小 特别是文本大小和高度 我知道这个问题已经通过以下方式得到了回答 动态调整滚动视图中标签的大小 https stackoverflow com questions 19932614 dynami
  • 如何在Excel VBA中添加到当前单元格选择

    因此 我有一个循环检查列中的每个单元格并找到特定日期 当前是前一周的星期一 我的代码现在确实正确选择了它们 但我希望它保留之前的选择 以便最终选择该规范的所有单元格 Public Function LastMonday pdat As Da
  • 在 setup.py 中添加自定义轮文件作为依赖项?

    我正在开发一个项目 其中一个依赖项实际上是 whl这不在 pypi 上 即我必须直接从作者那里下载轮子并且pip直接安装 在我的setup py文件 有没有办法做类似的事情 install requires library whl matp
  • 如果检测到越界,则禁用平移手势

    我有一个 UIView 我试图在屏幕上上下移动 但是我只想让它平移 这样当视图处于正常位置 0 0 时 您就无法向下拖动视图 我尝试检测识别器的中心何时不是视图高度的一半 但是视图是不可移动的 并且中心始终是高度的一半 在本例中为 230
  • SQL 代理命令行未保存

    我有一个 SSIS 包 我正在尝试安排时间 我在 SQL Server 代理下创建了一个新作业 在作业步骤的 命令行 选项卡上 我选择 手动编辑命令行 当我在作业步骤中从一个选项卡切换到另一个选项卡时 更改会被保留 但每当我退出并保存作业时
  • 在 Ruby 中编写一个在不同行获取参数的方法

    在使用 Rails 时 我发现可以调用这样的方法 lot Lot new do u u grade id grade id u company id company id u type id type id u sale id sale i
  • 如何从 AsyncTask 返回布尔值?

    我有一些 EditText 用户输入 ftp 地址 用户名 密码 端口和 testConnection 按钮 如果连接成功建立 它将返回布尔值 true boolean status ftpConnect address username
  • 在eclipse中创建android项目时出错

    我是 Android 开发人员的新手 我正在学习 但是当我创建一个新项目时 显示了这个错误 在错误日志中我有很多错误 我不知道如何在这里导出所有错误 在项目资源管理器中 我的项目显示如下 我不知道如何解决所有这些错误 感谢您的帮助 并对我的
  • rspec测试协会

    我想在我的 rspec 控制器测试中测试员工是否与公司关联 我想在我的create工作人员财务主任的行动 staff companies lt lt current company Where current company从会话变量中收集
  • Flutter - 仅当内容高度大于屏幕高度时才启用滚动

    默认情况下 我在主体小部件中采用 ListView 或 SingleChildScrollView 因此 如果内容较少 则会滚动内容 我只想在内容大于屏幕高度时启用滚动 如果内容高度小于屏幕高度 需要禁用滚动 double physical
  • 镜头和类型系列

    我遇到了使用问题Control Lens和 一起使用时的数据类型 XTypeFamiliesGHC 杂注 LANGUAGE TemplateHaskell LANGUAGE TypeFamilies import Control Lens
  • 当 Android 中的软键盘出现在视图前面时,布局应该向上

    我有一个问题 我有一个登录屏幕 当我们单击编辑文本时 软输入键盘会覆盖两个小部件 一个是 TextView 另一个是登录按钮 它们位于相对布局中 但我希望当我们选择任何编辑文本时整个相对布局应该向上 并且所有小部件都在 Android 默认
  • 向 TextView 添加底线边框 - iOS

    添加底线边框的最佳方法是什么TextView具有动态高度 我试过这个 func addBottomBorderWithColor color UIColor width CGFloat let border CALayer border b
  • 如何获取 $date + 5 来排除周末?

    我有一些页面需要设置将来的日期 由变量设置的 2 天或 5 天 该日期只需计算周一至周五 不包括周末 到目前为止我所拥有的 tts 是 2 或 5 的变量 具体取决于页面 Today date N m y NewDate date l t
  • 在 Cassandra 列中存储 JSON 字符串的有效方法?

    卡桑德拉新手问题 我正在使用 REST 调用从社交网站收集一些数据 所以我最终得到了 JSON 格式的数据 JSON 只是我表中的列之一 我试图找出存储 JSON 字符串的 最佳实践 首先我想到使用map类型 但 JSON 包含字符串 数字
  • 如何阻止 while 循环无限运行?

    不知道如何阻止这个 while 循环无限重复 我在用着hasNextInt检查用户输入是否为 int 如果未输入 int 则循环将无限重复 public static void validatingInput Scanner scan ne
  • 选择另一个表中不存在的值

    我有两张桌子 Table A ID 1 2 3 4 Table B ID 1 2 3 我有两个请求 我想选择表 A 中表 B 没有的所有行 在本例中是第 4 行 我想删除表 B 中没有的所有行 我正在使用 SQL Server 2000 你