Sql Firebird SELECT语句作为更新条件

Sql Firebird SELECT语句作为更新条件,sql,sql-update,firebird,firebird2.5,Sql,Sql Update,Firebird,Firebird2.5,我想更新使用此语句得到的结果行的某些属性: select adr.lkz, adr.adressnr, adr.kundennr, adr.vertreter1 as VERTRETERNR, adr.kurzname, ans.name as ANSPRECHPARTNER, ans.telefon, adr.plz, adr.ort from ans left join adr rt on ans.id = rt.id left join adr on adr.adressnr = ans.

我想更新使用此语句得到的结果行的某些属性:

select adr.lkz, adr.adressnr, adr.kundennr, adr.vertreter1 as VERTRETERNR, adr.kurzname, ans.name as ANSPRECHPARTNER, ans.telefon, adr.plz, adr.ort from ans
left join adr rt on ans.id = rt.id
left join adr on adr.adressnr = ans.adressnr
left join vet on adr.vertreter1 = vet.vertreternr
 where adr.plz similar to '26%' or adr.plz similar to '27%' or adr.plz similar to '28%' or adr.plz similar to '29%' or adr.plz similar to '30%' or adr.plz similar to '31%'

如何将该结果集作为UPDATE语句的标准?

Firebird已经定位了更新,尽管这需要一些工作,因为您要从多个表中进行选择。其他解决方案可能包括使用
executeblock
,迭代结果并逐个启动更新。这是否意味着我不能将所有内容都放在一条语句中?我还了解到Firebird不支持UPDATE语句中的联接。(“MS SQL 7及更高版本支持对联接进行修改(更新、删除、插入)。Firebird没有这种语法。”,)这取决于您希望更新的方式或内容,我认为您的问题缺少给出真实答案的信息。这就是说,您可能想看看。Firebird已经定位了更新,尽管这需要一些工作,因为您要从多个表中进行选择。其他解决方案可能包括使用
executeblock
,迭代结果并逐个启动更新。这是否意味着我不能将所有内容都放在一条语句中?我还了解到Firebird不支持UPDATE语句中的联接。(“MS SQL 7及更高版本支持对联接进行修改(更新、删除、插入)。Firebird没有这种语法。”,)这取决于您希望更新的方式或内容,我认为您的问题缺少给出真实答案的信息。也就是说,你可能想看看。