繁体   English   中英

sql查询到新表的结果

[英]Result of a sql query to a new table

在下面的sql查询中,当尝试将该子查询的结果存储到新表t_test时,该子查询成功执行。

')'附近的语法不正确

select * into t_test from
(select prm.RNumber,
case when pom.Category = 'Medicine'
    then pom.field
    end  as [Dept],
pop.branch
from tbl_pr_m prm join tbl_po_m pom on prm.rnumber = pom.rnumber
join tbl_po_p pop on prm.rnumber = prm.rnumber);

我可以知道如何将结果存储到新表t_test中。

最初的外部查询似乎没有什么用处,因为您只是从内部查询中选择所有内容。 您可以删除它,然后使用SELECT ... INTO NewTable构造:

SELECT prm.RNumber, CASE WHEN pom.Category = 'Medicine' THEN pom.field END AS [Dept],
    pop.branch
INTO t_test
FROM tbl_pr_m prm JOIN tbl_po_m pom ON prm.rnumber = pom.rnumber
JOIN tbl_po_p pop ON prm.rnumber = prm.rnumber

请注意,如果表t_test已经存在,则在运行此查询时会出现错误。

如果您确实要保留外部查询,则需要给内部查询一个表名称

select * into t_test from
(select prm.RNumber,
case when pom.Category = 'Medicine'
    then pom.field
    end  as [Dept],
pop.branch
from tbl_pr_m prm join tbl_po_m pom on prm.rnumber = pom.rnumber
join tbl_po_p pop on prm.rnumber = prm.rnumber) as originalResult;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM