我有2个SQL,它们具有相同的结构,但返回不同的数据。我想合并这两个表,例如它从两个表中获取数据。我尝试了工会,但没有提供所需的输出。
sql1:
select
distinct Job,
case job_status
when 'B' then 'GREEN'
when 'E' then 'RED'
end as 'M_Job_Status'
from
job_scheduler
where
convert (varchar,job_run_date,101) = '{0}'
and job_type in ('Morning_Jobs')
返回:
Job |M_Job_Status|
------------------------
job1 | green |
job2 | green |
sql2:
select
distinct Job,
case job_status
when 'B' then 'GREEN'
when 'E' then 'RED'
end as 'E_Job_Status'
from
job_scheduler
where
convert (varchar,job_run_date,101) = '{0}'
and job_type in ('Evening_Jobs')
返回:
Job |E_Job_Status|
------------------------
job1 | green |
job2 | green |
我希望结果是:
Job |M_Job_Status|E_Job_Status|
----------------------------------------
job1 | green | green
job2 | green | green
我尝试了Union,但是显示了状态列,一个在另一个的下面,我希望它可以并排显示。
尝试将两个查询中的每一个都包装在CTE中,然后将它们结合在一起:
WITH cte1 AS ( sql1 ),
cte2 AS ( sql2 )
SELECT
t1.Job,
t1.M_Job_Status,
t2.E_Job_Status
FROM cte1 t1
LEFT JOIN cte2 t2
ON t1.Job = t2.Job
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句