PostgreSQL中如何用单条SQL删除JSONB字段的多个指定键
PostgreSQL JSONB字段批量删除指定键的解决办法
针对你的需求,PostgreSQL提供了两种单条SQL的实现方式,能一次性删除JSONB字段中的多个指定键:
方式一:链式使用-操作符
通过连续使用JSONB的-操作符,依次移除目标键:
UPDATE test SET b = b - 'value1' - 'value2' WHERE a = 1;
方式二:数组批量删除
将需要删除的键存入文本数组,通过-操作符一次性移除所有指定键:
UPDATE test SET b = b - ARRAY['value1', 'value2']::text[] WHERE a = 1;
两种方式都能确保同时删除value1和value2键,即使字段中不存在某一键,操作也不会报错,只会忽略该键。
内容的提问来源于stack exchange,提问作者Gabriel Octavio Lozano Pinzón
相关产品推荐
相关产品推荐

