【问题标题】:Trim spaces from values in MySQL table从 MySQL 表中的值中修剪空格
【发布时间】:2012-06-08 19:45:47
【问题描述】:

我想通过修剪所有前导和尾随空格来更新表中的所有值。我尝试了以下查询,但都没有成功。

我知道可以将 TRIM 与 SELECT 一起使用,但是如何将它与 UPDATE 一起使用?

UPDATES teams SET name = TRIM(name)
UPDATES teams SET name = TRIM(LEADING ' ' TRAILING ' ' FROM name)

【问题讨论】:

  • 它适用于我...我刚刚尝试过。 "更新用户设置 firstname=trim(firstname);"
  • 是的,我使用了UPDATES 而不是UPDATE。有时候我是瞎子……

标签: mysql sql sql-update trim


【解决方案1】:

如果字段包含换行符则

UPDATE Tablename SET colname= TRIM(TRAILING '\r' FROM colname)

【讨论】:

  • UPDATE Tablename SET colname= TRIM(TRAILING '\n' FROM colname) 为我工作。
  • /n 或 /r 都是特殊字符
  • 是的,我从您的回答中得到了一些想法。谢谢..?
【解决方案2】:

这个解决了我在 TRIM 选项不起作用时遇到的一个奇怪问题:

UPDATE
    teams
SET
    name    = TRIM(BOTH UNHEX('C2A0') FROM name)

【讨论】:

    【解决方案3】:
    UPDATE teams SET name = TRIM(name)
    

    应该可以,它在 MySQL 的语义上是正确的。

    【讨论】:

      【解决方案4】:

      您不必SELECT

      试试这个 -

      UPDATE teams SET name = TRIM(name)
      WHERE 1 = 1;
      

      【讨论】:

      • 它有效,但事实并非如此。我真蠢。我使用UPDATES 而不是UPDATE。还是谢谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-05
      • 1970-01-01
      • 1970-01-01
      • 2020-09-09
      相关资源
      最近更新 更多