PostgreSQL中当companyName为空时用accountName字段值更新该字段
处理testTable中空companyName字段的更新需求
嘿,这个场景挺常见的,直接用一条UPDATE语句就能精准实现你要的效果——把所有companyName为空的记录,对应字段值替换成同一条行的accountName。
核心SQL语句
UPDATE testTable SET companyName = accountName WHERE companyName IS NULL OR companyName = '';
细节说明
- 为什么要加
OR companyName = ''?因为数据库里的“空”通常有两种情况:一种是字段值为NULL(数据库层面的空值),另一种是存入了空字符串*''*,这样写能覆盖所有空白的companyName场景。 - 执行这条语句后,id为2和4的记录里,
companyName就会分别被更新为b1和d1,完全符合你的要求。
安全验证小技巧
要是你担心误更新,建议先跑一条查询语句看看哪些记录会被修改:
SELECT id, companyName, accountName FROM testTable WHERE companyName IS NULL OR companyName = '';
这条语句会列出所有满足更新条件的记录,确认没问题后再执行UPDATE就更稳妥啦。
内容的提问来源于stack exchange,提问作者user3386779
相关产品推荐
相关产品推荐

