当前位置:  开发笔记 > 编程语言 > 正文

UPDATE使用两个表,Concatenation

如何解决《UPDATE使用两个表,Concatenation》经验,为你挑选了1个好方法。

我有两个表涉及这个我需要创建的查询,我不确定如何连接这两个表以便更新.

我有一个ITEM和CONSUMER_ITEMS表.ITEM表具有针对每个项目和UPC代码的不同代码.我需要将一个字符串与ITEM.UPC_CODE连接到CONSUMER_ITEMS.NEW_ITEM_CODE,其中CONSUMER_ITEMS.ITEM_CODE =(ITEM.ITEM_CODES的特定列表)

我如何更新CONSUMER_ITEMS.NEW_ITEM_CODE字段?

它基本上等于'string'|| ITEM.UPC但是如何引用CONSUMER_ITEMS.ITEM_CODE等于要更新的​​ITEM_CODES列表中的特定ITEM_CODE.



1> Tony Andrews..:

听起来像你想要的:

UPDATE consumer_items ci
SET    new_item_code = (SELECT 'string' || item.upc_code
                        FROM   item
                        WHERE  item.item_code = ci.item_code
                       )
WHERE  ci.item_code IN ('a','b','c');

或者,假设表之间存在外键关系,而consumer_items具有主键,则应该可以:

UPDATE (SELECT ci.id, ci.new_item_code, item.upc_code
        FROM   consumer_items ci
               JOIN item ON item.item_code = ci.item_code
        WHERE  ci.item_code IN ('a','b','c')
       ) v
SET v.new_item_code = 'string' || v.upc_code

编辑:添加WHERE子句

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有