当前位置: 首页 > 知识库问答 >
问题:

如果条件满足,则更新表。(将表b中的值更新为a)所需的相应值[副本]

裴俊豪
2023-03-14

我有一个表a,其中有字段'date'、'time'、cost和order_id

表b包含字段“year”“month”“hour”“cost”和order_id字段。

两个表都与“order_id”字段链接。如果两个表中的year、month和hour和order_id相同,我希望更新表a,并将表b的相应值更新到表a字段“cost”。

我用过这个语句,但是query不起作用?这里面到底出了什么问题?我需要帮助

UPDATE item a, cost b
    SET a.cost = b.cost
    WHERE a.order_id = b.order_id
    AND YEAR(a.date) = b.YEAR
    AND month(a.date) = b.month
    AND hour(a.time) = b.hour

共有1个答案

彭炳
2023-03-14
UPDATE item a
JOIN cost b ON a.order_id = b.order_id
           AND YEAR(a.date) = b.YEAR
           AND month(a.date) = b.month
           AND hour(a.time) = b.hour
SET a.cost = b.cost
 类似资料:
  • 问题内容: 整个晚上 其实是晚上。大约晚上11点。我的大脑正在关闭,需要一些帮助,所以我可以完成工作并回家:) 我有两个表-表a和表b。当其他两个字段匹配时,我需要使用表b中的值更新表a中的字段。这些表的每个记录没有唯一的ID :( 基本上,我想这样做: 或者至少…我认为那是我想要做的… 有人可以帮我吗? 问题答案: 您可以通过更新中的联接来执行此操作:

  • 我对可缓存批注的条件有问题。 从文档中,我了解到除非条件在被注释的方法被调用后得到验证,并且只有在不满足除非条件的情况下,方法返回的值才会被缓存(并实际返回)。否则,应返回缓存的值。 首先,这个假设是否正确? 编辑: [来自Spring文档]顾名思义,@Cacheable用于划分可缓存的方法-即,将结果存储到缓存中的方法,因此在后续调用(使用相同的参数)时,缓存中的值将返回,而不必实际执行该方法。

  • 我正在做一个数据密集的角度项目,在这个项目中,我有一个ng重复,其中许多值每秒更新一次。如果一个值为空,它现在会更新DOM以显示一个空值;这是正确的行为。 需要的解决方案 我想要的是一个过滤器或表达式,当新值为空或NULL时,它不会更新DOM中的值。我相信他们称之为“锁定数据”。 可能的解决方案 我用$watch找到了几个可能的解决方案,但我相信它们不适合ng重复,或者至少效率不高:angular

  • 我正在使用改型2.0来创建服务器上传文件的改型服务。 我引用的是https://futurestud.io/blog/regetfit-2-how-to-upload-files-to-server 下面是我的FileUploadService代码:

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

  • 问题内容: 它可以通过以下方式设置/重置MySQL表的值 但是我需要设置其现有值(以修复MM复制),例如: 这不起作用 好吧,实际上,我想对数据库中的所有表运行此查询。但这实际上不是很关键。 除了手动运行查询之外,我找不到解决该问题的方法。您能否提出一些建议或向我指出一些想法。 谢谢 问题答案: 使用: …将根据auto_increment列中现有的最高值将auto_increment值重置为下一