问题标签 [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 投票
1 回答
959 浏览

sql - 对计数(*)和自连接感到困惑

我想返回当月和当年的所有申请日期。这一定很简单,但是我想不通。我知道当月有 2 个日期,当年有 90 个日期。右,左,外,内我都试过了,只是把代码扔在墙上,想看看什么会粘住,但都不起作用。我要么两列得到 2,要么两列得到 180。这是我最新的选择声明。

0 投票
5 回答
2399 浏览

sql - 自连接查询

考虑下表:

我正在努力寻找那些有家用电话但没有手机的人。

此查询有效:

但是这个没有:

两者之间的唯一区别是h.type = 'home'条件的位置 - 第一个它在where子句中,第二个它是on子句的一部分。

为什么第二个查询不返回与第一个相同的结果?

0 投票
6 回答
3770 浏览

sql - 获取同一个表中的公共行

我进行了一些搜索,但没有找到与我想要实现的目标完全一样的东西。

基本上,我试图找到两个用户投票习惯之间的相似之处。

我有一个表格存储每个单独的投票,其中存储:

我的目标是通过找出两件事来计算用户 A 和 B 之间的相似度:

  1. 他们共有的票数。也就是说,他们都在同一个帖子上投票的次数(此时方向无关紧要)。
  2. 他们在共同投票中朝同一个方向投票的次数

(然后简单地将#2 计算为#1 的百分比,以获得粗略的相似性评级)。

我的问题是,我如何找到两个用户的投票集之间的交集?(即我如何充分计算第 1 点,而不会以非常低效的方式循环每一次投票。)如果他们在不同的表中,我想一个 INNER JOIN 就足够了......但这显然行不通在同一张桌子上(或者会吗?)。

任何想法将不胜感激。

0 投票
1 回答
9635 浏览

mysql - 如何使用 phpMyAdmin 添加指向同一个表的外键?

我有一个现有的 InnoDB 表,它已经有指向不同表的外键。

但是当我尝试创建一个指向主索引的外键时,我得到一个错误(检查数据类型)。

该表是以 User_Id 作为主表的用户。

我想要一个外键 Manager_ID,它是 User_Id 的 FK。

两个 INT 两个 长度 10 无符号...

但我仍然收到数据检查错误...?

0 投票
4 回答
1290 浏览

mysql - MYSQL:复杂查询问题

我正在使用民意调查:每个民意调查都有很多选项,用户可以在民意调查中投票一次。因此,我有一个包含以下字段的“投票”表:

  • id(投票的id)
  • option_id(所选投票选项的 ID)
  • user_id(用户的id)
  • poll_id(投票的id)

所以这就是我想要做的:给定一个 poll_ids 数组,我想让一个查询返回每个投票中投票最多的选项。因此,如果我给出 1 和 2 的 poll_id,我想取回投票 1 和 2 的投票最多的选项。我尝试了以下方法:

这几乎可以解决问题......但是为我提供的所有投票选项以及所提供的每个投票的相应投票,而不仅仅是投票最多的选项。如果有人有任何想法,我将不胜感激。谢谢。

0 投票
1 回答
9494 浏览

ruby-on-rails - How do I do reflexive self-join relationships in ActiveRecord?

I'm trying to implement a social networking style friendship model and I didnt have much much luck trying to figure out the plugins available out there. I think I'll learn Rails better if I do it myself. So here's what I have :

In irb when I try this:

I get an error:

Expanation of friendship system:

  • A user can invite other users to become friends.
  • Users who you invited to become friends are represented by invited_friends.
  • Users who invited you to become friends are represented by inviter_friends.
  • Your total friend list is represented by invited_friends + inviter_friends.

Schema

0 投票
3 回答
1912 浏览

sql - Zend Select 带有自连接覆盖字段

帖子和评论存储在同一个表中。因此,要获取每个帖子及其评论,我们这样做:

问题是生成的数组是扁平的,并且评论数据覆盖了帖子数据,这是返回的示例:

我们希望得到的结果更像这样:

对其他解决方案的任何提示也非常受欢迎。

谢谢。

0 投票
3 回答
1504 浏览

mysql - 自联接的依赖子查询

如何将以下依赖子查询更改为自联接?

0 投票
7 回答
674 浏览

sql - 对于这种情况,是否存在单个自联接?

我有一个包含 2 个字段 GroupId、Member 的表 ALPHA:

目标:给定 - A、B、C 的输入 - 我必须查询表以查找是否存在用于这组确切成员的 GroupId。所以,这就是我打算做的:

  1. 查询计数为 3 的所有 GroupId 的表(因为我的输入是 A、B、C ..我知道它的 3)
  2. 这会给我A1,A3。现在,查询该集合以获取完全匹配的成员值......这将给我 A1。

我计划编写一个存储过程并以某种方式实现目标。但是,我的问题可以通过一个查询来实现……也许是一个自连接。

澄清:(A,B,C) 的集合是 A1 独有的。如果输入 (A,B,C,D),则查询不应返回 A1。

0 投票
2 回答
4093 浏览

hibernate - 休眠自加入

背景

我有一个包含id、imageId、propertyId列的表。

可能有许多图像与单个属性相关联,并且可能有许多属性与单个图像相关联。

imageId - many-to-many - propertyId

我有一个 propertyIds 列表,我想使用 Hibernate找出与所有 propertyIds 关联的所有图像。

问题。

刚才我一次选择一个属性,并使用 Criteria API 查找与此 propertyId 关联的所有 imageIds,我获得了一个 imageIds 列表。我在下一个查询中使用这个 imageIds 列表并说

select imageIds where imageId in (imageIds obtained in previous step) where propertyId = x

如此有效地,命中数据库的查询数量将等于 propertyId 的数量。我认为这不是一个好的解决方案,不得不访问数据库 n 次,我尝试使用 Detached Query 但没有成功。有更好的解决方案吗?

另外,当我最终获得 imageIds 列表时,将其存储在用户会话中并分页是一个好主意(让我们不考虑结果的数量)还是重复整个过程是个好主意还是应该我考虑将它存储在数据库中是为了分页吗?