我想将两个表合并在一起,以开发出列出患者ID的主数据。
我的问题是此数据存储在哪里?
我想对联合结果进行左联接。有没有办法将这些结果移到表中?
Error: spawn /usr/bin/python ENOENT
at Process.ChildProcess._handle.onexit (child_process.js:232)
at onErrorNT (internal/child_process.js:407)
at process._tickCallback (next_tick.js:63)
at Function.Module.runMain (loader.js:744)
at startup (internal/bootstrap/node.js:285)
at bootstrapNodeJSCore (internal/bootstrap/node.js:739)
答案 0 :(得分:1)
例如对于MySQL
CREATE TABLE new_tbl
SELECT patid FROM db1.claims_women_dx_preg2
UNION
SELECT patid FROM sandbox_jp.claims_women_px_preg2
;
,但其他数据库的语法不同,例如SQL Server:
CREATE patid
into new_tbl
from (
SELECT patid FROM [dbo].claims_women_dx_preg2
UNION
SELECT patid FROM [sandbox_jp].claims_women_px_preg2
) u
;
请注意,我假设您要合并的2个表有所不同,在该联合查询中使用同一张表毫无意义。
如果仅在有限的时间内需要它,并且您的数据库支持“ with”,则
with cte as (
SELECT patid FROM [dbo].claims_women_dx_preg2
UNION
SELECT patid FROM [sandbox_jp].claims_women_px_preg2
)
select
*
from cte
答案 1 :(得分:0)
@User_By_Already的答案中的CTE逻辑也适用于Teradata。
您还可以将结果放入易失性表中:
CREATE VOLATILE TABLE VT as (
SELECT patid FROM sandbox_jp.claims_women_dx_preg2
UNION
SELECT patid FROM sandbox_jp.claims_women_px_preg2)
with data
primary index(patid)
on commit preserve rows;
然后,您可以从该易失性表中进行选择,并连接到另一个表。
或者,您可以使用派生表,再次连接到另一个表。
select
...
from
(SELECT patid FROM sandbox_jp.claims_women_dx_preg2
UNION
SELECT patid FROM sandbox_jp.claims_women_px_preg2) p
join <other table> on ...