当前位置: 首页 > 面试题库 >

具有相同ID的2个表的内部联接

长孙承嗣
2023-03-14
问题内容

我有一个table(T1),其中2个column(XY)是id。这些对应名称的名称idT2带有列的另一个表()中name

假设我只是在使用,X那么简单的内部联接就可以解决我在获取名称时遇到的问题。

Select T1.somedata,T1.somedata1,T2.name from T1
Inner Join T2 ON T1.X=T2.id

但是,如果我希望该名称也要解析为什么?“内部连接T1.Yname会将其解析为?

Select T1.somedata,T1.somedata1,T2.name from T1
Inner Join T2 ON T1.X=T2.id
Inner Join T2 ON T1.Y=T2.id

我知道以上查询是错误的。我可以得到name那些对应于两个第T1.XT1.YINNER Join

-初学者


问题答案:

我建议始终为表和列添加别名。因此,您将确定选择了哪些数据。

select
    T1.somedata,
    T1.somedata1,
    T2X.name as XName,
    T2Y.name as YName
from T1 as T1
    inner join T2 as T2X on T2X.id = T1.X
    inner join T2 as T2Y on T2Y.id = T1.Y


 类似资料:
  • 问题内容: 所以我有四个桌子。每个表都有一个与前一个表ID相同的ID。因此,我的点击表中有一个ID和一个广告来源的ID。在广告表中,它有一个广告ID和一个来自其广告系列的ID。所以这是一个例子。 因此,要找出表4中的值从何而来,我需要遍历每个表并检查它们具有哪个ID。基本上,我想知道表1中的哪些值与表4中的值相关联。 表4中的内容是网站的访问者,表1中的内容是互联网广告。我想知道哪些访客来自哪些广

  • 问题内容: 我有两个表,它们的列数是可变的。(我不知道有多少列或名称会是什么),例如表A和表B。 表A: 表B 询问: 当TableA和TableB都具有相同名称的列时,我无法区分两个不同的列。例如,两个表都有“名称”列,此查询将导致: 我正在寻找一种区分两个表的方法。最好使用预定义的列名称,例如。 我知道“ AS”关键字,但是问题是我不知道这些列名称将是什么。(我不知道TableA或TableB

  • 问题内容: 很抱歉,我只学习了PHP和MySQL,已经搜索了一个多星期,但是没有找到任何答案。 我创建了一个简单的财务脚本,该表如下所示: 我想要这样的结果 有人可以帮助我解决我的问题吗? 谢谢 问题答案: 正如@Quassnoi指出的那样,这对于MySQL来说不是很有效。我尝试使用怪胎连接而不是子查询,因为内部查询本身就可以使用。 编辑 对此引起了一些兴趣,发现连接版本的速度是@Quassnoi

  • 我正在尝试对消费者群体进行实验 这是我的代码片段 } 当我同时运行两个spark流媒体作业时,它会出错 线程“main”java中出现异常。lang.IllegalStateException:当前没有分配给组织上的分区venkat4-1。阿帕奇。Kafka。客户。消费者内部。订阅状态。组织上的assignedState(SubscriptionState.java:251)。阿帕奇。Kafka。

  • 我有四个表 我想获得所有付款金额和现金预付款金额的总和,这些金额与从特定日期起与某人加入的贷款具有相同的ID。 这是我的代码,但总和计算不正确:

  • 问题内容: 我有以下查询: 并输出以下内容: 我想要的输出是这样的: 我认为这很有用。但是,这样做: 我有一个像这样的独特行: 我该如何解决? 问题答案: 您需要添加: 在此过程中,您应该学到其他一些知识: 使用显式语法。一个简单的规则:不要在子句中使用逗号。 使用表别名(和)。它们使查询更易于编写和阅读。