【发布时间】:2015-05-20 18:23:43
【问题描述】:
在 db2 中有没有一种方法可以用同一张表中的选定行替换整个表?
类似 REPLACE into tableName select * from tableName where col1='a';
(我可以导出选定的行,删除整个表并再次加载/导入,但我想避免这些步骤并使用单个查询)。
原始表
col1 col2
a 0
一个 1
b 2
c 3
所需的结果表
col1 col2
0
一个 1
任何帮助表示赞赏!
谢谢。
【问题讨论】:
-
你为什么不能直接
DELETE FROM mytbl WHERE COL1 <>'a'? -
该表包含很多列,它只会使查询变得很长。由于有一个替换关键字,我想知道该删除方法是否有解决方法。
-
我不明白。列数与什么有什么关系?如果您在
WHERE子句中谈论比较次数,则无论您保留所需的行还是删除不想要的行,您都必须执行相同的次数。添加了一个代码示例的答案..