【问题标题】:Trim all occurences of a character in PostgreSql修剪 PostgreSql 中所有出现的字符
【发布时间】:2021-03-06 08:53:49
【问题描述】:

我正在尝试从属性salary 的值中删除所有零。 我正在使用TRIM 函数(通过将salary 类型转换为TEXT)。 TRIM 函数不会删除介于两者之间的 0,例如,如果我在 809800 上使用它,则结果是 '8098'。中间的'0' 还在。 这是我正在做的事情:

提前致谢。

【问题讨论】:

  • 签出replace()
  • 非常感谢迈克,它有效。那是一些快速的答复。再次感谢您。

标签: sql postgresql trim


【解决方案1】:

为此使用replace()

demo:db<>fiddle

SELECT replace('01000200330004000', '0', '')

或用于您的salary 列:

SELECT replace(salary, '0', '')

【讨论】:

    【解决方案2】:

    您也可以使用translate()

    select translate(salary, '0', '')
    

    对于一个角色,这就像replace()。但是,这可以更好地推广到多个字符。您可以只列出字符而不是嵌套调用replace()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-01
      • 2019-01-10
      • 1970-01-01
      • 1970-01-01
      • 2012-12-16
      • 1970-01-01
      • 2021-12-31
      相关资源
      最近更新 更多