问题标签 [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.
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 个以上的连接来正确显示我想要的内容。
c# - 给定两个对象列表,如何比较 C# 中的新 KV?
我使用 except 来查找修改后的对象,但 except 需要一个比较器并且只返回差异。
返回此类结果的最佳算法是什么?
谢谢。
r - 如何不丢失 R 中 setdiff 中的复制元素?
我正在使用setdiff
函数来提取第一组中不在另一组中的元素。但是在评估之后,setdiff
我收到了这样的元素,但它们是单个值(没有第一组那么多);像这样:
有没有更聪明的方法来提取这些元素,但数量与第一组中的数量一样,例如这条线的结果?
jq - JQ:两个数组的setdiff
如果我有一个包含两个数组的对象,其中包含唯一值
我怎样才能找到.all - .some
?
在这种情况下,我正在寻找["A","ABC"]
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 .
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()
命令来获取A
and的游标B
,但我不知道如何set_difference
在两个游标之间执行。
我的另一个选择是使用聚合管道,但我无法考虑如何以我可以使用$setDifference
运算符的方式来制定管道。
作为一名 MongoDB 新手,我确信我正在以错误的方式思考这个问题。当然,这是可以做到的吗?我错过了什么?
python - 集差与集减法
有什么区别-
和.difference()
设置?显然语法不一样,一个是二元运算符,另一个是实例方法。还有什么?
python - 矩阵行差,输出一个布尔向量
我有一个m x 3
矩阵A
及其行子集B
( n x 3
)。两者都是指向另一个大型 4D 矩阵的索引集;他们的数据类型是dtype('int64')
. 我想生成一个布尔向量x
,其中x[i] = True
ifB
不包含 row A[i,:]
。
A
或中没有重复的行B
。
我想知道是否有一种有效的方法可以在 Numpy 中做到这一点?我找到了一个有点相关的答案:https ://stackoverflow.com/a/11903368/265289 ;但是,它返回实际行(不是布尔向量)。
haskell - 在haskell中的列表上是否有不同的Ord运算符?
我想在 2 个整数列表之间设置差异,这允许在 haskell 中重复。
所以在有的情况下[1,2,1,4,3] [1,2,4]
,区别是[1,3]
目前我可以通过普通\\
操作员来完成listA \\ listB
。
但问题是这太慢了。由于整数在 ord 组中,因此可以更快地完成。
我知道该Data.Multiset
模块,它会做得更快,但是有没有一种本地方法可以在没有Data.Multiset
模块的列表上执行它?
python - 保持两个列表之间的顺序不同
我有两个列表l
和l_match
. l_match
是一个空列表。
给出输出
我希望输出与输入的顺序相同。即在上述情况下,输出应该是
你能建议编辑吗?