Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何连接到左连接两列_Sql_Oracle_Left Join - Fatal编程技术网

Sql 如何连接到左连接两列

Sql 如何连接到左连接两列,sql,oracle,left-join,Sql,Oracle,Left Join,我有两个表tableCode和tableName,如下所示: tableCode code1, code2, code3, name3 1, 1, 1, code31name tableName type, typeName, code, name c1, code1, 1, code11name c2, code2, 1, code21name 我想选择下面的结果 1,code11name,1,code

我有两个表tableCode和tableName,如下所示:

tableCode
code1, code2, code3, name3
1,     1,     1,     code31name

tableName
type, typeName, code, name
c1,       code1,        1,    code11name
c2,       code2,        1,    code21name
我想选择下面的结果

1,code11name,1,code21name,1,code31name
我只知道以下情况,你能帮我吗

select m1.code1, m2.name, m1.code2, m3.name, m1.code3, m1.name3 
from tableCode m1 
left join tableName m2 on m1.code1 = m2.code and m2.type ='c1'
left join tableName m3 on m1.code1 = m3.code and m3.type ='c2'

你需要再加入一次。我认为您对表格别名感到困惑:

select c.code1, n1.name, c.code2, n2.name, c.code3, n3.name3 
from tableCode c left join
     tableName n1
     on n1.code = c.code1 and n1.category  = 'c1' left join
     tableName n2
     on n2.code = c.code2 and n2.category  = 'c2' left join
     tableName n3
     on n3.code = c.code3 and n3.category  = 'c3';

帮你做什么?有什么问题?你的问题是什么?请使用文字解释基于输入的输出外观。从你的例子看不清楚。PS阅读有关旋转的内容。非常感谢,我修改了sql,可以吗?你没有解释你自己。请参阅我之前的评论。看起来您得到的应该会返回您想要的。请使用您正在使用的数据库标记您的问题。此外,您的代码有一个
类型
列,但没有一个表有。根据您想要的结果,我假设
tableName
有另一行用于
code3