如何从更新查询中的Postgres数据库中的字段中删除所有空格?

Leo*_*Sam 20 postgresql

用于在表上运行更新查询以从列中的值中删除所有空格的正确语法是什么?

我的表被调用users,在列中fullname有一些值看起来像'Adam Noel'.我想删除空格,以便新值'AdamNoel'

我喜欢30k行

a_h*_*ame 33

update users
  set fullname = replace(fullname, ' ', '');
commit;
Run Code Online (Sandbox Code Playgroud)

  • @MarcoDonJuan:抱歉,你在“原始空间”中迷失了我。我不知道你在说什么。请在 http://sqlfiddle.com 创建一个示例,并让我们知道新数据应该是什么样子。 (2认同)

Ras*_*cox 6

要删除所有空格(不只是空格字符),可以使用:

update users set fullname = regexp_replace(fullname, '\s', '', 'g');
commit;
Run Code Online (Sandbox Code Playgroud)


小智 5

只需使用简单的代码

 REPLACE('some_string', ' ', '')
Run Code Online (Sandbox Code Playgroud)

要么

Replace('some_string', '\s', '')
Run Code Online (Sandbox Code Playgroud)

从字符串中删除任何空格

  • `\s` 对于 `replace()` 没有特殊含义,第二个语句从字符串中删除一个反斜杠,后跟字符 `s`。 (3认同)

小智 5

您可以包含一个条件以仅更新需要替换的值。

UPDATE users SET fullname = REPLACE(fullname, ' ', '') WHERE fullname ~* ' ';
Run Code Online (Sandbox Code Playgroud)

又快又脏