【发布时间】:2018-07-26 12:45:42
【问题描述】:
尝试从 3 个表中提取数据:warpall, warpalq, warcmdt
我希望将来自warpall/warpalq 的数据作为同一结果中的行返回(所以首先是warpall 数据,然后是下面的warpalq 数据),加入warcmdt,因为它有我需要的描述返回。我无法合并它们,因为 warpalq 中没有我需要的一个字段。
有人可以建议如何解决这个问题吗?
select clntpm, pal#pm, clsspm, clsqpm, **commpm** from warpall
where <criteria>
select clntpq, pal#pq, clsspq, clsqpq from warpalq
where <different criteria>
join warcmdt on warcmdt.clntcd = warpall.clntpm and warcmdt.commcd =
warpall.commpm
--- 编辑
我现在的语法是;
select
* from (select substr(warpall.clntpm,1,2) as clntwf,
substr(warpall.pal#pm,1,10) as pal#wf, commpm, substr(warpall.clsspm,1,2) as
clsswf, warpall.clsqpm * 1 as clsqwf from warpall
where locnpm <> 'ASSEMBLED PALLET'
and commpm <> 'ASSEMBLED PALLET'
and clsqpm <> 0
union all
select substr(clntpq,1,2) as clntwf, substr(pal#Pq,1,10) as pal#wf, null
commpm, substr(clsspq,1,2) as clsswf, clsqpq * 1 as clsqwf from warpalq
where clsqpq <> 0
) as t9
inner join
warcmdt as t3
on
t3.clntcd = t9.clntwf and t3.commcd = t9.commpm
【问题讨论】: