问题标签 [anti-join]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
48 浏览

sql-server-2008 - 在 table1 中搜索与 table2 中的值匹配的值,而无需连接 (Sql Server 2008)

我遇到了一种情况,我有两个存储员工信息的表,表 1 是员工,表 2 是第 3 方临时工。这些表对 ID 使用不同的约定(不是我可以控制的)。

问题是这些第 3 方临时工经常被雇用,并且这些表之间没有联系。发生这种情况时,我需要在创建它们之前确保它们不存在于 Table2 中。现在,我只想确定 DOB 和 Last 4 上的匹配项,尽管我可能至少要在条件中添加名字,但现在我想从某个地方开始。

尽管名称不同的列是相同的(DOB = Birth Date,Code = Last 4)

这是我想出的,它似乎有效,但我需要从产生此匹配的 table2 返回 user_id?

谢谢!

0 投票
1 回答
8702 浏览

mysql - MySQL 反连接

我有两个表:

课程:身份证、姓名

教师:IdUser、IdCourse、IdSchool

现在,例如,我有一个 id 为 10 的用户和一个 id 为 4 的 School 。

我想对表 Course 中的所有 Cousrses 进行选择,他们的 ID 没有记录在 Table Teacher 中与 IdUser 10 和 IdSchool 4 位于同一行的位置。

我怎么能做这个查询?

0 投票
2 回答
500 浏览

sql - 带反连接的sql优化

我有一个类别的递归表和一个包含以下字段的公司表:

类别树的最大深度=3;

类别 cx -> 类别 cy -> 类别 cz

知道公司类别总是链接到最后一个类别(c3),我想要一个公司链接到的所有类别(c1z,c2z,c3z,c1y,c2y,c3y,c1x,c2x,c3x)用于我的搜索引擎。//c1y是category_1的父类,c1x是category_1的父类...

我想出的最好的查询是:

它有很多重复。一个用于公司中的 category_*。一个用于重复多次。

有什么方法可以删除所有这些重复项?

- 更新 -

假设我们使用两个表来解决 category-* 字段,那么具有 3 级类别的递归问题呢?

例如,如果只有一个类别,它看起来像

0 投票
3 回答
468 浏览

mysql - SELECT fields where there no exist others in another table

I have the following table schema:

What I want to do is select field2 from the second table where field1 in the second table doesn't exist in the first table (field1).

I had this :

The problem is that this query will retrieve multiple repeated information from table2 if multiple rows apply in table1. I added DISTINCT and/or LIMIT but it still doesn't work. Any idea on how to do this?

0 投票
1 回答
22657 浏览

r - 没有适用于“因素”类对象的“anti_join”方法

我想根据特定列识别 dataframe1 中存在的行,而 dataframe2 中不存在这些行。我已经使用下面的代码来获取所需的信息。

不幸的是,我遇到了一个错误:

UseMethod(“anti_join”)中的错误:
没有适用于“anti_join”的方法应用于“因子”类的对象

我已经检查了两个数据框中所需列的类,结果是factor. 还尝试将列分成一个单独的变量,假设它可以解决问题,但没有运气!

你能分享你的想法吗?

谢谢

0 投票
2 回答
107 浏览

sql - 在多个表中仅查找具有特定状态的子项的父记录

我需要所有相关儿童记录都处于关闭状态的所有票。所以如果其中一个孩子是别的东西,我不希望结果集中的票。

我尝试使用反连接模式,但我的问题是孩子们住在不同的桌子上。

请参阅此http://sqlfiddle.com/#!3/febde/8 示例

t1:票 t2:相关记录 t3:child1 t4:child1

结果是:

所以

  • 工单 1183 有两条相关记录,均尚未关闭。(拒绝)
  • 工单 1185 有两条相关记录,均已关闭(接受)
  • 工单1187有两条相关记录,一条是新的,一条是关闭的。(拒绝)
  • 工单 1190 有一个相关记录已关闭(接受)
  • 工单 1192 有一个相关记录(不同的表)已关闭(接受)
  • 工单1189无相关记录(拒绝)

从这个集合中,我只想在结果集中看到票 1185、1190、1192。它应该看起来像:

我试过类似的东西:

这导致ticket2 的两行和ticket 3 的一行(因为它有一个孩子关闭)我有点困惑如何正确解决这个问题。

0 投票
1 回答
51 浏览

mysql - MySQL 使用连接排除 id

我有 2 张桌子:

我想获取所有消息,但如果消息包含“DELETED”,则从所有消息中排除此消息的用户 ID(在此消息之后不返回来自用户 ID 3 和 2 的消息),使用 JOIN 并且不使用 NOT IN。谢谢您的帮助。

0 投票
1 回答
108 浏览

r - 执行半反连接(在二进制搜索中)

我想data.table通过选择第一个键并排除第二个键来对 a 进行子集化。

我的第一直觉没有奏效(!操作太早):

这似乎太不雅了,但有效:

这也有效,但这种方法牺牲了一些功能(例如,访问:=on DT):

我是否已经用尽了我的选择,或者我错过了什么?

0 投票
3 回答
34 浏览

sql - 查找可用性为 = 0 或未知的所有书籍

我有一张桌子Books,里面有很多properties. 属性存储为键和值。

因此,如果书籍是:

并且属性是

我想得到如下结果:

因为 Book id 1 的可用性为 0,而 2 的可用性为 10,而 3 没有任何可用性信息。

我知道我可以使用反连接,但我不知道如何使用它。我对反连接有点陌生。

任何帮助表示赞赏。

0 投票
7 回答
46934 浏览

python - 反加入熊猫

我有两个表,我想附加它们,以便仅保留表 A 中的所有数据,并且仅在其键唯一时才添加表 B 中的数据(键值在表 A 和 B 中是唯一的,但是在某些情况下键将出现在表 A 和 B) 中。

我认为这样做的方法将涉及某种过滤联接(反联接)以获取表 B 中未出现在表 A 中的值,然后附加这两个表。

我熟悉 R,这是我在 R 中用来执行此操作的代码。

我将如何在 python 中实现这一点?