我正在尝试使用数据库中另一个导入表中的值填充数据库中的表。在使用 INSERT INTO 语句之前,我尝试单独运行 select 语句来验证我是否会获得正确的值,但遇到了此错误。我已经阅读了关于同一问题的其他几个线程,但无法弄清楚我的具体出了什么问题。
(使用 Azure Data Studio,如果这是有用的信息)。这是我的代码(下面也链接了屏幕截图)--
SELECT DISTINCT
StateAbbr,
[State],
Longitude,
Latitude,
Zipcode,
City,
[Population]
FROM BehaviorCoverageMerged b
JOIN
(SELECT
Zipcode,
City,
[Population]
FROM [2010ZipData]) z
ON [b].[StateAbbr] = [z].[StateAbbr];
GO
我不断得到
消息 207,第 16 级,状态 1,第 14 行
列名“StateAbbr”无效。
该列确实存在于我的数据库的表中,所以我不知道问题是什么。有谁知道为什么会发生这种情况?还附上两张屏幕截图 - 一张是查询和错误消息,另一张是表架构(列所在的位置)。非常感谢任何帮助!
您需要从
中的
StateAbbr
中选择
2010ZipData
SELECT DISTINCT
b.StateAbbr, -- changed
...
Zipcode,
City,
[Population]
, StateAbbr -- added
FROM [2010ZipData]) z
但是您应该能够在没有第二次选择的情况下加入:
SELECT DISTINCT
b.StateAbbr, -- changed
[State],
Longitude,
Latitude,
Zipcode,
City,
[Population]
FROM BehaviorCoverageMerged b
FROM [2010ZipData] z
ON [b].[StateAbbr] = [z].[StateAbbr];
GO
我不确定为什么现在会发生这种情况,但请更改您的 From 语句以开始:
来自(从BehaviorCoverageMerged中选择*)b