sql - 使用关联行检索查找列两次

标签 sql database oracle

我有两张 table 。 第一个

farmer_id         Farmer_name
   1               Raju
   2               Jay
   3               Ram
   5               Vinay

第二个

farmer_id      registered_farmer_id  Season
  1                  2               2014-15
  3                  5               2015-16

表一是查找农民姓名的查找表。表二有两列,即 farmer_id 和 registered-farmer_id,它们查找同一个表。即表1。我需要的是

Farmer_id    farmer_name    Registered_farmer_id   Registered_farmer_name
  1           Raju                  2                   Jay
  3           Ram                   5                   Vinay

最佳答案

SELECT T2.farmer_id, T1.farmer_name, T2.registered_farmer_id, T3.farmer_name
FROM TABLE2 T2 
LEFT JOIN TABLE1 T1
ON T2.farmer_id = T1.farmer_id
LEFT JOIN TABLE1 T3
ON T2.registered_farmer_id = T3.farmer_id;

TABLE1 是表 1 的名称,TABLE2 是表 2 的名称。

关于sql - 使用关联行检索查找列两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33342635/

相关文章:

sql - 形成选择两个字段的最大差异的 SQL 查询

sql - 为 SQL Server 中的调用计算不同的资费周期

Mysql分区对DDL和DML的影响

oracle - 在 PL/SQL Developer 中直接从一个包体跳转到另一个包体

从 11G 导入备份时出现 Oracle EDITIONABLE 属性错误

java - JBoss 7.1 - 声明数据源并通过 JNDI 访问

SQL Server 2008 执行计划问题

sql - 更改后如何知道列的先前长度

mysql - 从 3 个有条件的连接表中选择?

mysql - 没有公共(public)字段的 SQL 连接表