Re: UPDATE with JOIN
От | Keith Worthington |
---|---|
Тема | Re: UPDATE with JOIN |
Дата | |
Msg-id | 20050531124816.M57906@narrowpathinc.com обсуждение исходный текст |
Ответ на | Re: UPDATE with JOIN ("Keith Worthington" <keithw@narrowpathinc.com>) |
Список | pgsql-novice |
On Tue, 24 May 2005 16:31:15 -0400, Keith Worthington wrote > On Tue, 24 May 2005 14:26:21 -0400, Tom Lane wrote > > "Keith Worthington" <keithw@narrowpathinc.com> writes: > > > UPDATE tbl_line_item > > > SET tbl_line_item.reviewed = TRUE > > > FROM tbl_item > > > ON ( tbl_line_item.item_id = tbl_item.id ) > > > WHERE item_type = 'DIR'; > > > > Of course that's not valid JOIN syntax (no JOIN keyword, and no > > place to put it either). You have to use the WHERE clause: > > > > UPDATE tbl_line_item > > SET tbl_line_item.reviewed = TRUE > > FROM tbl_item > > WHERE tbl_line_item.item_id = tbl_item.id > > AND item_type = 'DIR'; > > > > regards, tom lane > > > > Thanks Tom > > I couldn't figure out how to do the JOIN part of that statement. > Using your instruction all I had left to do was drop the > qualification off the SET column and it worked. :-) Thanks again. > > UPDATE tbl_line_item > SET reviewed = TRUE > FROM tbl_item > WHERE tbl_line_item.item_id = tbl_item.id > AND item_type = 'DIR'; > > Kind Regards, > Keith > > ---------------------------(end of broadcast)--------------------------- > TIP 7: don't forget to increase your free space map settings Replying to myself in the hopes of helping someone else. I wondered (and needed to know) if this concept could be extended to use multiple tables? The answer is yes. The syntax of the query seemed different to me so I repeat it here. UPDATE tbl_line_item SET reviewed = TRUE FROM tbl_item_bom, tbl_item WHERE tbl_line_item.so_number = tbl_item_bom.so_number AND tbl_line_item.so_line = tbl_item_bom.so_line AND tbl_line_item.item_id::text = tbl_item.id::text AND tbl_item_bom.so_subline IS NOT NULL AND ( tbl_item.item_type::text = 'THIS'::text OR tbl_item.item_type::text = 'THAT'::text OR tbl_item.item_type::text = 'OTHR'::text ); Kind Regards, Keith
В списке pgsql-novice по дате отправления: