问题标签 [set-difference]

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 投票
0 回答
54 浏览

mysql - MySql:多个连接返回的两列差异

我有一个数据库,里面有很多业务以及它们之间的关系。我正在尝试找到一种方法来让 B2 出售给 B1 的所有企业也不出售。但仅在 B1 和 B2 出售给同一企业的 B2 上。

V = 供应商,C = 客户,两者都是企业,但从供应商/客户的角度思考会使这更容易解释。

V1 - 卖给-> C1 <- 卖给- V2 - 卖给-> C2

我正在为特定的 V1 起点寻找所有不在 C1 中的 C2。

我目前的表:

我可以使用这两个查询来获得最新的结果,但是每次我想更新它时我都必须删除 vcvc 表,目前构建它需要 15 分钟。我也不需要在任何时候访问所有这些信息。我可能需要一次生成几千个这些列表,而不是完整的数据库。

有没有办法在单个查询中做到这一点,这样我每次需要获取这些信息时都不必构建一个全新的表?我目前有 50 万个关系,当我构建这个表时,我最终得到了超过 1 亿行,其中大部分是我不需要的。理想情况下,我可以将电子邮件(首选)或 business_id 作为起始业务/供应商,然后只返回具有名称、城市、州、cCount、vCount 的业务/客户列表,并让它们按 vCount 和 DESC 顺序排列可能限制20ish。速度不是一个大问题,我真的只是希望能够获得当前结果,而不必构建一个大表,我需要 100+ 百万行中的 20 行。我最初尝试使用临时表,但因为我无法像当前查询需要的那样“重新打开”临时表。

谢谢您的帮助。

使用示例数据和所需输出进行更新。某些 cCount 和 vCounts 可能已关闭,我复制了真实数据然后对其进行了修改,但我不知道我是否正确更新了所有数字,因为我添加了所需的连接以显示我需要的内容。

更新 2:

http://sqlfiddle.com/#!9/fdcec/2

这是它的一个小提琴。小提琴中的数据与上面的数据略有不同,因为它有 2-3 个以上的连接来正确显示我想要的内容。

0 投票
1 回答
533 浏览

c# - 给定两个对象列表,如何比较 C# 中的新 KV?

我使用 except 来查找修改后的对象,但 except 需要一个比较器并且只返回差异。

返回此类结果的最佳算法是什么?

谢谢。

0 投票
1 回答
59 浏览

r - 如何不丢失 R 中 setdiff 中的复制元素?

我正在使用setdiff函数来提取第一组中不在另一组中的元素。但是在评估之后,setdiff我收到了这样的元素,但它们是单个值(没有第一组那么多);像这样:

有没有更聪明的方法来提取这些元素,但数量与第一组中的数量一样,例如这条线的结果?

0 投票
3 回答
3804 浏览

jq - JQ:两个数组的setdiff

如果我有一个包含两个数组的对象,其中包含唯一值

我怎样才能找到.all - .some

在这种情况下,我正在寻找["A","ABC"]

0 投票
0 回答
1286 浏览

functional-programming - 在 SML 中创建集合函数并集、差集、交集

我正在尝试编写三个可用于在 SML 中操作集合的函数定义。如您所见,我们将实现基于列表。

Union 是 Set s 和 Set t 中所有元素的集合。(不允许重复)

交集是其中元素同时属于 Set s 和 Set t 的集合。

如果 Set s 和 Set t 是集合,那么 Set s 在 Set t 中的相对补集是 Set t 中的元素集合,而不是 Set s 中的元素集合。

现在代码如下所示:

如您所见,需要时使用两个帮助函数 - mem 和 filter.filter 将通过一个列表并只保留满足某个布尔函数 p 的那些元素,而 mem 只是检查一个列表以查看它是否包含值 a .

0 投票
2 回答
1691 浏览

mongodb - 如何计算两个查询的差异?

我有一个包含一组文档的 MongoDB 集合。每个文档都有一个 ISODatedate和一个整数id(不是_id)。如果集合中存在具有字段值的文档,则称id: X存在。因此,例如:date: D{ id: X, date: D }

我想id随着时间的推移跟踪 s,因为它们每天被创建和销毁。使用上述数据,在 2000 年 1 月 1 日至 2000 年 1 月 4 日的日期范围内:

我认为解决这个问题的最好方法是每天循环,看看id今天和第二天之间存在什么,并执行一组差异。例如,要获取 2000 年 1 月 2 日创建和销毁的 id 集,我需要在任一天的数组之间执行两个集差异:

我可以使用find()命令来获取Aand的游标B,但我不知道如何set_difference在两个游标之间执行。

我的另一个选择是使用聚合管道,但我无法考虑如何以我可以使用$setDifference运算符的方式来制定管道。

作为一名 MongoDB 新手,我确信我正在以错误的方式思考这个问题。当然,这是可以做到的吗?我错过了什么?

0 投票
3 回答
76450 浏览

python - 集差与集减法

有什么区别-.difference()设置?显然语法不一样,一个是二元运算符,另一个是实例方法。还有什么?

0 投票
3 回答
147 浏览

python - 矩阵行差,输出一个布尔向量

我有一个m x 3矩阵A及其行子集B( n x 3)。两者都是指向另一个大型 4D 矩阵的索引集;他们的数据类型是dtype('int64'). 我想生成一个布尔向量x,其中x[i] = TrueifB不包含 row A[i,:]

A或中没有重复的行B

我想知道是否有一种有效的方法可以在 Numpy 中做到这一点?我找到了一个有点相关的答案:https ://stackoverflow.com/a/11903368/265289 ;但是,它返回实际行(不是布尔向量)。

0 投票
2 回答
647 浏览

haskell - 在haskell中的列表上是否有不同的Ord运算符?

我想在 2 个整数列表之间设置差异,这允许在 haskell 中重复。

所以在有的情况下[1,2,1,4,3] [1,2,4],区别是[1,3]

目前我可以通过普通\\操作员来完成listA \\ listB

但问题是这太慢了。由于整数在 ord 组中,因此可以更快地完成。

我知道该Data.Multiset模块,它会做得更快,但是有没有一种本地方法可以在没有Data.Multiset模块的列表上执行它?

0 投票
3 回答
3273 浏览

python - 保持两个列表之间的顺序不同

我有两个列表ll_match. l_match是一个空列表。

给出输出

我希望输出与输入的顺序相同。即在上述情况下,输出应该是

你能建议编辑吗?