我正在尝试从两个表的联接创建一个表,以便在数据之间切换。但是我在“(”上得到了一个语法错误,如果我删除i并且只做“as”,我在select命令上得到了一个语法错误。
CREATE TABLE Neigh
AS
(SELECT *
FROM COR_NEIGBORHOODS_N1 A1
LEFT JOIN NEIG_RAMAT_GAN_SHCONOT B1 ON A1.Settle_Name = B1.City_Name
AND A1.NEIGHBORHOODs_AREA_FNAME = B1.name
WHERE B1.City_Name IS Null AND A1.Settle_Code = 8600)
有人知道有什么问题吗?
2条答案
按热度按时间hpcdzsge1#
sql server不支持
create table as
. 相反,它使用into
. 所以:使用
select *
是危险的——因为列名可能重复。我建议你具体列出这些列。注意,我还将表别名从无意义的字母改为表名的缩写。
qcuzuvrc2#
CREATE TABLE Neigh AS (SELECT Column_name AS Column1,Column_name AS Column2 FROM COR_NEIGBORHOODS_N1 CN LEFT JOIN NEIG_RAMAT_GAN_SHCONOT NRG ON CN.Settle_Name = NRG.City_Name AND CN.NEIGHBORHOODs_AREA_FNAME = NRG.name WHERE NRG.City_Name IS Null AND CN.Settle_Code = 8600)
请使用'as'表示与我在上述查询中使用的表相同的列别名。