我正在尝试创建一个临时表来放入不相关的列以供以后使用。我可以创建表,它将创建我更改表所具有的列,但它不会使用数据更新这些列。
SELECT *
INTO testDB.dbo.t
FROM Categories;
ALTER TABLE testDB.dbo.t
ADD RegionID INT, RegionDescription varchar(255);
UPDATE testDB.dbo.t
SET RegionID = Region.RegionID,
RegionDescription = Region.RegionDescription
FROM Region
INNER JOIN t ON Region.RegionID = t.RegionID;
当我运行此命令时,我收到“错误对象 t 无效”。类别进口罚款。我只是想从区域添加这两列。
类别ID | 类别名称 | 描述 | 图片 | 区域ID | 区域描述 |
---|---|---|---|---|---|
1 | 饮料 | 软饮料、茶 | 空 | 空 |
我想要:
类别ID | 类别名称 | 描述 | 图片 | 区域ID | 区域描述 |
---|---|---|---|---|---|
1 | 饮料 | 软饮料、茶 | 数据 | 数据 |
这里的数据来自另一个数据库的另一个表。其他数据库中的行数没有categoryID 的行数多。仅categoryID 设置为NOT NULL。
查询应该是:
更新 SET RegionID = Region.RegionID, 区域描述 = 区域.区域描述 来自地区 内连接 testDB.dbo.t t ON Region.RegionID = t.RegionID;