我正在尝试使用另一个表中的单个值更新一个表中的单个列(所有行)。问题是没有索引字段可以连接表。以下是相关表格/列的示例(无数据):
Table1: ID, Name, Address, Telephone, PriceList
Table2: PriceList, Description
我想用Table2.Pricelist
中的值更新Table1.Pricelist我正在测试的当前数据在Table2中有一行,但可能会有更多行。在这种情况下,我只会使用返回的第一个值。
我想我会在这里发布,以获得关于这是否可行的明确答案。
答案 0 :(得分:0)
UPDATE Table1
SET Pricelist = DLookup("PriceList", "Table2");
DLookup
表达式将从Table2
返回单个值。因此,当Table2
只包含一行时,它会为您提供“first” PriceList
值。但是,如果Table2
中有更多行,DLookup
仍会返回一个值,但可能不是来自您认为是“first”行的行。
了解如何确定哪个目标行包含您要在PriceList
中使用的UPDATE
值会有所帮助。
答案 1 :(得分:0)
update table1
set pricelist= (select top(1) table2.pricelist from table2);