Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.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_Subquery_Teradata - Fatal编程技术网

Sql 在子查询中使用查询结果

Sql 在子查询中使用查询结果,sql,subquery,teradata,Sql,Subquery,Teradata,我对这个问题有疑问。我读了不少东西,但还没有找到解决办法。问题在于子查询——它确实不喜欢它。有人能帮我把这件事做好吗 第一个表表示已执行的工作表,第二个表显示员工信息。我基本上是在使用“职位报告对象”字段(人力资源代码)获取员工的主管姓名。顺便说一下,这是在Teradata中 谢谢 select t1.record_number, T1.record_created_by, T2.last_name, T2.first_name, T2.employee_no, t2.position_numb

我对这个问题有疑问。我读了不少东西,但还没有找到解决办法。问题在于子查询——它确实不喜欢它。有人能帮我把这件事做好吗

第一个表表示已执行的工作表,第二个表显示员工信息。我基本上是在使用“职位报告对象”字段(人力资源代码)获取员工的主管姓名。顺便说一下,这是在Teradata中

谢谢

select
t1.record_number,
T1.record_created_by,
T2.last_name,
T2.first_name,
T2.employee_no,
t2.position_number,
T2.position_reports_to as SUPID,
(select last_name from T2 where SID=T2.position_nbr) as SUP
from T1
left join T2 on T1.record_created_by=T2.employee_no
where
t1.record_create_date=current_date

您可以尝试另一个
LEFT JOIN
,而不是子查询:

SELECT
   t1.record_number,
   T1.record_created_by,
   T2.last_name,
   T2.first_name,
   T2.employee_no,
   t2.position_number,
   T2.position_reports_to AS SUPID,
   sup.last_name AS sup_last_name
FROM T1
LEFT JOIN T2 ON T1.record_created_by=T2.employee_no
LEFT JOIN T2 sup ON sup.SID=T2.position_nbr
WHERE t1.record_create_date=current_date

您可以尝试另一个
LEFT JOIN
,而不是子查询:

SELECT
   t1.record_number,
   T1.record_created_by,
   T2.last_name,
   T2.first_name,
   T2.employee_no,
   t2.position_number,
   T2.position_reports_to AS SUPID,
   sup.last_name AS sup_last_name
FROM T1
LEFT JOIN T2 ON T1.record_created_by=T2.employee_no
LEFT JOIN T2 sup ON sup.SID=T2.position_nbr
WHERE t1.record_create_date=current_date

您正在
中引用T2,其中SID=T2。位置\u nbr
但不清楚要使用哪个T2。它可以是主FROM子句或子查询中的一个。由于存在歧义,查询无法编译

为了使其正常工作,您需要为其中一个T2s添加别名

例如


但是,如图所示,您可以再次连接到同一个表,该表通常性能更好。

您在
中引用了T2,其中SID=T2。位置\u nbr
但不清楚要使用哪个T2。它可以是主FROM子句或子查询中的一个。由于存在歧义,查询无法编译

为了使其正常工作,您需要为其中一个T2s添加别名

例如


但是,如图所示,您可以再次加入同一个表,这通常会表现得更好。

这非常有效。我需要在加入中添加一个“as”,但除此之外,它还不错。当我第二次尝试将其分层以获得下一级管理时,我用尽了假脱机空间。我想你不可能全部赢。谢谢你们的帮助,先生们,这很有效。我需要在加入中添加一个“as”,但除此之外,它还不错。当我第二次尝试将其分层以获得下一级管理时,我用尽了假脱机空间。我想你不可能全部赢。谢谢你们的帮助,先生们。