我在我的公司中使用Postgresql作爲主存儲,並且我努力實現涉及三個不同表的更新查詢。涉及三個表的複雜更新
這裏是模式:
- 表1已ENTITY_ID,ENTITY_TYPE和COMPANY_ID(引用Company.id)列。
- 公司有id列
- Special_company具有ID(其對應於Table1.entity_id)和COMPANY_ID(參照Company.id)
我想更新表1中的所有行,其中Table1.entity_type = 'SpecialCompany'
爲了填寫Table1.company_id
這樣的:
Table1.entity_id = SpecialCompany.id and SpecialCompany.company_id = Company.id
我已經開始類似的東西:
UPDATE Table1
SET company_id = (select c.id
FROM company c
INNER JOIN special_company w ON c.id=w.company_id
WHERE w.id=709)
WHERE entity_type='SpecialCompany' AND entity_id=709;
但我無法用所有替代709
,其中Table1.entity_type = 'SpecialCompany'
。
任何幫助將不勝感激。
我沒有時間看看這個。我的查詢在MSSQL中工作。我沒有意識到這是Postgre。對於那個很抱歉。 – Krishna