PostgreSQL中移除表整列所有双引号的实现方法
移除PostgreSQL列中所有双引号的方法
如果你只是想查询时临时移除所有双引号,用
replace()函数就行,它会全局替换列里所有的双引号:SELECT replace(food_type, '"', '') FROM your_table;把
food_type换成你的实际列名,your_table换成表名即可。这个函数能处理字符串里任意位置的双引号——不管是开头、结尾还是中间的,全部替换为空。如果要永久更新表中的数据,执行UPDATE语句:
-- 建议先备份数据或开启事务,避免误操作 BEGIN; UPDATE your_table SET food_type = replace(food_type, '"', ''); -- 确认更新结果没问题后再提交 COMMIT; -- 出错的话可以回滚:ROLLBACK;
trim()之所以不好用,是因为它只能移除字符串首尾的指定字符,中间的双引号根本碰不到,而replace()是对整个字符串内的所有匹配字符做替换,刚好满足你的需求。
内容的提问来源于stack exchange,提问作者Mycode
相关产品推荐
相关产品推荐

