【发布时间】:2016-10-19 23:54:12
【问题描述】:
在给定的数据库表“Animals”中,存在一个名为“anim_name”的列,如下图所示
更新 anim_name 以便不会有 '-' 。
例子:
'TE-MAEWA 04000' should update as 'TE MAEWA 04000'
'TE-MAEWA 04354 CHAROLAIS CROSS' should update as 'TE MAEWA 04354 CHAROLAIS CROSS'
以下更新语句是错误的
update animals
set anim_name = 'TE MAEWA%'
where soc_code = 'AUDV'
and anim_name like 'TE-MAEWA%'
因为这会将每个动物名称更新为“TE MAEWA%”。什么是正确的更新声明。
【问题讨论】:
-
我将创建一个选择行的 uuid 和不带 - 的 anim_name 的 CTE。然后使用该 CTE 通过连接进行更新。看看这里:stackoverflow.com/a/25358642/4080476
标签: sql postgresql