plsql - PLSQL 用多个集合更新多行
问题描述
我有一长串需要更新到表格的数据。现在,我了解如何更新,但是,我正在努力更新多行。
这是我的示例数据:
Loc Check
020201 10000
020301 10050
020401 10100
020501 10150
020601 10200
根据我在这里找到的内容,我尝试了不同的方法。但这似乎不是我想要的。
我在想它会是这样的:
UPDATE t1
set check = '10000' where loc = '020201',
set check = '10050' where loc = '020301',
set check = '10100' where loc = '020401'
虽然没有工作:D所以我不知道如何根据多组格式化它......
谢谢。
解决方案
您可以使用 CASE 表达式
update t1
set check = case loc when '020201' then '10000'
when '020301' then '10100'
... etc.
end
where loc in ('020201','020301',...);
但坦率地说,我只想写几个单例更新语句:
update t1 set check = '10000' where loc = '020201';
update t1 set check = '10100' where loc = '020301';
.etc.
推荐阅读
- margin - wordpress / bootstrap 5边距不起作用
- sql - jsonb列中对象数组内的ILIKE查询
- pyspark - 如何在多个 Spark 结构化流数据帧上进行“联合”?
- typescript - 使用 Opensea SDK 和 Web3 时的 Typescript 编译错误
- linux - 从 Linux 操作系统查看基于非 NITRO 的旧实例的 EBS 卷 ID
- c# - XAML ProgressBar 在 WPF 中是蓝色和细的
- .net - Windows Files-OnDemand 上下文状态列
- events - 为什么 GA4 没有设置我随事件发送的时间戳?
- search - 如何使用给定的特定参考来构建搜索优化模型,以识别来自具有 5TB 数据的 Data Lake 中的数据和文档
- git - 推送我的代码并创建 PR 表明其他人也提交了。为什么会这样?