问题标签 [relational-division]

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 投票
2 回答
57 浏览

sql - 选择至少有 P 和 R 的数据

我有一个名为 Table1 的表,如下所示:

我想显示那些 accountNo 出现多次(重复)并且 trn_cd 至少同时具有 P 和 R 的记录。

在这种情况下,输出应该是这样的:

我已经完成了这个 sql 但不是我想要的结果:

结果如下,其中 AccountNo 111 不应该出现,因为 111 没有 trn_cd P:

任何的想法?

0 投票
3 回答
205 浏览

mysql - 将集合论思想转化为 SQL

假设我有以下数据库表:

给定作为参数传递的类别列表,假设A, C我只想查找仅属于这两个类别的广告,在上述情况下,只有广告1会匹配。

谁能帮我把它翻译成SQL?

0 投票
2 回答
225 浏览

mysql - MySQL 搜索 FTS 与多个查询

在一个项目中工作,其中架构是这样的:

id , key, value

和列是 varchar,表key是.valueInnoDB

用户可以根据键值对进行搜索……在 MySQL 中查询的最佳方式是什么?我能想到的选项是:

  • 对于每个key => value表单,查询并执行inner joinid匹配所有条件。

  • 或者在后台, 使用on和单个查询填充一个MyISAM表。如果网站很受欢迎并且表有十万行,那么稍后将有这样的好处,我可以轻松地将代码移植到 Lucene,但现在是 MySQL。id, infoFull Text indexinfolike '%key:value%key2:value2%'

0 投票
3 回答
77717 浏览

sql - 选择与列表中的所有项目匹配的行组

假设我有两张桌子:

cars– 汽车清单

passedtest– 包含汽车通过的所有测试:

现在,我如何从passedtest通过所有测试(A、B、C、D)的表中选择一辆汽车?

我尝试了该IN声明,但它也与通过一项测试的汽车相匹配。我正在寻找一个语句来匹配列表中所有行的所有值。

0 投票
1 回答
212 浏览

sql - SQL:查找包含用户列表的团队

我有一个游戏,我的团队包含许多用户。每个团队中有不同数量的用户,但对于任何团队来说,用户的组合使该团队独一无二。

我为此创建了三个数据库表。

如果用户 1、4、5 和 7 以前一起在一个团队中,我想知道该团队的团队 ID。SQL 会是什么样子呢?

我已经尝试过这样的事情:

users数组以编程方式填充值。这看起来正确吗?还有其他更好的方法吗?

0 投票
2 回答
935 浏览

c# - LINQ中的关系划分?

关系划分是Codd的原始关系运算符之一,俗称提供所有零件的供应商。已经有各种 SQL 翻译,例如 Celko 使用可以驾驶机库中所有飞机的飞行员的例子讨论了几种方法。

我更喜欢“与集合操作员的划分”,因为它是“有余数”(即威尔逊也可以驾驶 F-17 战斗机,但机库中没有)以及当除数是空集(即当机库为空时,所有飞行员都返回):

现在我需要在 LINQ to Objects 中执行此操作。这是一个建议的直接翻译:

由于LINQ 据说是基于关系代数的,因此直接翻译似乎是合理的。但是有更好的“本机”LINQ 方法吗?


回顾@Daniel Hilgarth 的回答,在 .NET Land 中,数据很可能首先被“分组”:

...并且仅投影名称是任意的,从而使潜在的解决方案更加直接:

0 投票
2 回答
93 浏览

sql - SQL Server,在表中查找不同的组

我有桌子

我想获取不同的组。基本上结果集应该是

25从结果中排除,因为它们包含item/percentage1

0 投票
2 回答
1087 浏览

sql - SQL 查找具有共同成员的集合(关系除法)

我有一组单独的“类”和“组”,每组都分配了一个或多个标签。我想为每个组找到包含每个组相同(或更多)标签的类子集。

一些样本数据:

并输出:

示例结果集如下所示:

结果输出:

我知道这是一个关系划分类型的问题,涉及havingcount。这些帖子描述了我想做的事情,但我不知道如何将示例应用于上述特定情况:

0 投票
1 回答
184 浏览

php - 如何编写特定的 MySQL 查询来执行关系除法/相交?Id est,我要写什么查询?

我无法理解如何编写特定的 MySQL 查询来执行关系除法/相交。我查看了以下链接/ SO问题,但我仍然感到困惑:

MySQL 相当于 IN() 子句执行逻辑与关系代数:除法分开我们站立高级 SQL:相交在 MySQL 中执行 INTERSECT 和 MINUS 以及在 MySQL 中替代INTERSECT

我试图调整“MySQL 中的 INTERSECT 的替代方案”中显示的 SQL 查询,但在实现中迷失了方向。

伪代码

MySQL(内部 db_query() :

0 投票
1 回答
4170 浏览

mysql - MySQL ONLY IN() 等效子句

我在这里给出了我的问题的一个非常抽象的版本,所以请多多包涵。我有一个查询,将检查特定主体是否具有某些相同类型的多个参数。例如,就巧克力而言,男孩有多项选择。但是,我想从桌子上选择与我提到的巧克力完全一样的男孩。不是更多,不是更少,不是“喜欢”或不是“IN()”。

..where 当然 '$string' 是一个 PHP 变量,其中仅包含我想用来拉男孩的巧克力的逗号分隔值。

我知道这是无效的 MySQL 语句,但是否有任何有效的等价物?

编辑:

这是更全面的查询,它在特殊情况下获取记录,但并非总是如此。

当我单独选择 1000 拉出两个男孩(或)1000 和 1003 拉出 ID 为 10007 的男孩时,什么也没有发生。