我有两张桌子。表格a
使用表b
中的引用,并使用表a
中的值更新表b
UPDATE
a
SET
a.StructureTypeRef = b.StructureTypeRef
FROM
Template_Structure as a
INNER JOIN
dbo_StructureType as b
ON
a.StructureType = b.StructureType
通常情况下,我可以找到与b
字段匹配的'structuretype'
引用,但在这种情况下,我想将b.StructureTypeRef
插入a.StructureType = 0 and b.StructureType = 'External Areas'
,作为'External Areas'
的对应参考{1}}不是0.我该怎么做?
提前致谢: - )
答案 0 :(得分:0)
我认为你正在尝试做这样的事情,虽然你在这里问的是什么但不是很清楚
UPDATE Template_Structure
SET StructureTypeRef = (SELECT StructureTypeRef
FROM dbo_StructureType
WHERE StructureType = 'External Areas')
WHERE StructureType = 0
答案 1 :(得分:0)
UPDATE a
SET StructureTypeRef = b.StructureTypeRef
FROM Template_Structure a
JOIN StructureTypeRef b ON 1=1 AND b.StructureType = 'External Areas'
WHERE a.StructureType = 0
说明:1=1
没用,但是,这只是表示两个表之间没有“直接”连接的方法。等效请求:
UPDATE a
SET StructureTypeRef = b.StructureTypeRef
FROM Template_Structure a
CROSS JOIN StructureTypeRef b
WHERE a.StructureType = 0 and b.StructureType = 'External Areas'
这两个请求都有效,因为正如业主回答我的那样,表b中有一行,其中StructureType ='External Areas'。