当前位置: 首页 > 面试题库 >

根据条件使用另一张表的列更新列值[重复]

胡夕
2023-03-14
问题内容

这个问题已经在这里有了答案

SQL UPDATE SET哪一列等于另一列引用的相关表中的值? (10个答案)

7年前关闭。

我有两张桌子

table1(id,item,price)值:

id | item | price
-------------
10 | book | 20  
20 | copy | 30   
30 | pen  | 10

.... table2(id,item,price)值:

id | item | price
-------------
10 | book | 20
20 | book | 30

现在我要:

update table1 
   set table1.Price = table2.price 
 where table1.id = table2.id
   and table1.item = table2.item.

我该怎么做?


问题答案:

这样的事情应该做到:

UPDATE table1 
   SET table1.Price = table2.price 
   FROM table1  INNER JOIN  table2 ON table1.id = table2.id

您也可以尝试以下操作:

UPDATE table1 
   SET price=(SELECT price FROM table2 WHERE table1.id=table2.id);


 类似资料:
  • 问题内容: 我有一个名为Vendor的表,在此表中有一个名为AccountTerms的列,该列仅显示一个值(即0、1、2、3),依此类推。我也有一个要使用()的列,以反映该值的含义,例如: 等等… 我需要的是一个脚本,它将查看AccountTerms中的值,然后将更新以显示上面显示的单词值。我该怎么做呢? 问题答案: 我将尝试以一种尽可能简单的方式来解释这一点,以便于理解: 假设您有一个这样的表设

  • 我有这样的表: 我需要一个更新查询来根据它包含的值更新salary列。 工资需要增加: 10000到15000之间的值为5000 15000到20000之间的值为7000 20000到30000之间的值为8000 40000到60000之间的值为10000

  • 问题内容: 我确信这个问题以前可能已经被问过,但我似乎找不到正确的答案。如果我有两个清单 我正在尝试使用_list1重新排列_list2中的元素,以便它们完全匹配顺序。什么是最干净的方法?所需的输出: 很抱歉,如果这是重复的,但到目前为止,我只能使用压缩的sorted()方法找到数字列表的答案。 如果_list2是列表列表怎么办? 所需输出: 还有一个假设:如果我想使用_list1作为键对其他任何

  • 创建一个Java方法,它将列表作为参数(MasterList)并返回另一个列表(ExpectedList)。 列表中每个对象都有两个变量: null 我试图实现的逻辑是:当有多个ID相同的对象时,只考虑计数较大的特定对象。表示ID:有3个对象,所以我只考虑(ID:abc122,Count:20),因为在ID:abc122的对象中Count更高。在结束时,方法应返回

  • 问题内容: 我有这张叫 shop的 桌子: 我也有这张桌子叫做 item : 我主要想做的是:根据 项目* 表的 item_price 更新 shop 表的* item_price * 。 * 免责声明 询问此查询的目的是从item item_price表中填写我的商店item_price。但是将来的商店item_price的价值将与item_price的价值不同。 例如: 从商店购买的商品将使用

  • 问题内容: 我遇到问题,找到了解决方案,但我觉得这是错误的方法。也许,有一种更“规范”的方式来做到这一点。 问题 我有两个要合并的数据框,而没有多余的列,也没有擦除现有的信息。范例: 现有数据框(df) 要合并的数据框(df2) 我想更新与是否列“A”和“A2”相对应。结果将是(: 这是我的解决方案,但我认为这不是一个很好的解决方案。 有谁有更好的方法吗?谢谢 ! 问题答案: 是的,无需合并即可完