问题标签 [self-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 投票
2 回答
312 浏览

mysql - MySQL 自连接问题

看看下面的 mySQL 查询:

上面的查询首先通过内部查询创建了一组 ALL the friends.sub's,然后外部查询选择了一个用户列表,其中用户 ID 包含在内部查询创建的集合中(即两个集合的并集) .

这很好用。但是,如果您需要内部集不仅包含 dom = 1 的 subs,还包含 sub = 1 的 dom,如下所示: 外部查询与上面相同,纯伪代码:

是否可以使用内部查询实现这种功能?

任何帮助或帮助表示赞赏;-D

非常感谢大家,我的头痛已经消失了!

0 投票
2 回答
232 浏览

tsql - 自加入到最低出现的组

我在 T-SQL 中遇到了一个难以解决的问题。

我有一个表,其中包含按 key1 和 key2 分组的记录组。我按日期按时间顺序排列每个组。对于每条记录,我想查看之前是否存在记录(在组内且日期较低),其中字段“数据字段”与当前记录的“数据字段”形成允许的组合。对于允许的组合,我有一个名为 AllowedCombinationsTable 的表。

我编写了以下代码来实现它:

现在对于这些可能的组合记录中的每一个,我想选择第一个(参见代码中的占位符)。我怎样才能最有效地做到这一点?


编辑:好的,让我们说源,只显示组 (1, 1):

允许组合表:

加入后,我现在有:

我只想显示记录 4“狗”的第一个“马”,也只显示记录 5“猫”的第一个“马”。

得到它?;)

0 投票
3 回答
1767 浏览

c# - 按树级别解析分层自连接表?

如您所见,我有一个自引用类别表:
替代文字

我想解析这个表来找出每个类别的树级别。例如,如果根节点级别为 0,则 CPU 和硬盘驱动器以及 VGA 和 RAM 处于级别 1,依此类推。我该如何处理?
我创建了一个字典来放置每个类别 ID 及其级别:

键是 CategoryId,值是 Level。请帮助我如何填写字典?

0 投票
2 回答
657 浏览

sql - 帮助将 SQL 嵌套子查询转换为连接查询以兼容 mysql 4.0

我有一个嵌套的 SQL 查询:

我的网络服务器运行不允许嵌套查询的 MySQL 4.0。一些 SQL 大师可以使用 JOIN 术语建议相同的查询吗?我试了又试……但我想不通。感觉很笨。

0 投票
2 回答
170 浏览

mysql - 有没有比在 MySQL 中加入表更有效的方法?

我有一个具有实体属性值结构的表。例如,作为实体,我可以有不同的国家。我可以有以下属性:“位于”、“有边界”、“首都”。

然后我想找到所有“位于亚洲”和“与俄罗斯接壤”的国家。执行此操作的直接方法是使用实​​体将表与自身连接起来,即用于连接的列,然后使用where.

但是,如果我在实体列中有 20 行俄罗斯在,那么在联合表中我将有 20*20=400 行,俄罗斯作为实体。每个国家都是如此。所以,联合表将是巨大的。

使用原始表提取所有位于亚洲的国家,然后提取所有与俄罗斯接壤的国家,然后使用这两组国家中的那些元素,会不会更有效?

0 投票
5 回答
5279 浏览

sql - 从表中选择一个字段具有相同值的行

我有一个包含这两个表的 MySQL 数据库:

返回共享同一导师的任何学生的首字母和姓氏的查询是什么?

我试过SELECT intials, lastName FROM Student WHERE tutorId = tutorId 了,但这只是返回所有学生的名字。

0 投票
2 回答
2446 浏览

mysql - MySql查询以获取同一表字段中的所有元素组合

我想重新格式化 MySql 表以用于网络节点映射程序。原始格式为:

我想将所有组织名称拉到两个输出表中,如下所示:

org1 和 org2 都来自原始表中的同一字段,并且通过共享一个或多个 scribes 相互关联。所有抄写员都有唯一的 ID。当然,我不想要重复的条目。

到目前为止,我可以做的是通过对组织进行“%text%”搜索,然后从输出中排除该组织,来拉出连接到列表中任何一个组织的所有组织,如下所示:

所以我觉得有一些关于自加入或案例的技巧可能会起作用,但我还没有找到任何东西。

0 投票
7 回答
492 浏览

sql - 将表连接到自身有什么问题?

我有一个名为TempAllAddresses以下列的表 - ID, Address, State. 我想用 、 和 填充一个AddressStateCountCount应该表示 TempAllAddresses 表中有多少记录具有类似此地址的地址,后跟通配符。如果这没有意义,这里有一个例子来说明 - 假设我有这样的记录:

我想要做的是将一条新记录插入一个名为的新表中,该表AddressCount有13 个 Phoenix 表示. _AddressStateCount

我想通过 TempAllAddresses 自身的内部连接来完成此操作。这是我尝试过的,但它似乎没有完成我正在寻找的东西:

不过,伯爵肯定不在了。它应该相当于运行“ SELECT COUNT(*) FROM TempAllAddresses WHERE State=thisRecordsState and Address LIKE thisRecordsAddress + '%'”。我怎样才能做到这一点?我究竟做错了什么?

编辑:

计数似乎通过以下方式关闭 - 如果我有上面提到的记录,然后我有另外 2 条记录也有 NY,然后有“13 Phoenix Road”和“13 Phoenix”的地址Rd",然后我想在我的决赛桌中获得这样的记录:

相反,我似乎得到:

我不太确定这里发生了什么……某种笛卡尔积?排列组合...?谁能解释一下?

编辑2: 进一步编辑,因为我似乎被误解了(并且真的需要一个解决方案:()......这是一个带有相关子选择的查询,可以完成我正在寻找的内容。我想做同样的事情使用表的内部连接而不是子选择。

基本上,对于每条记录,我想获取表中具有相同状态的记录数以及以该地址开头的地址(或等于......我确实想将此地址作为计数的一部分) )。

0 投票
5 回答
226 浏览

sql - 加入自己与自己的表?

不是非常重要......但我有点好奇:自联接的正确术语是什么 - 你是自己加入一个表还是加入一个表?

0 投票
1 回答
178 浏览

ruby-on-rails-3 - Ruby On Rails:当与另一个关联的表条目被破坏时要求确认

我需要一些帮助来解决以下问题:

我有一个与自身自关联的组表,因此每个组(可选)以分层方式链接到另一个组。我想编写一些代码,在销毁组条目之前以某种方式检查它是否有任何子组,并要求用户确认,或者他们是否也希望删除子组。

我看过回调,但我不知道如何在视图中将确认请求发送给最终用户,然后将响应返回给模型的回调。

谢谢