【问题标题】:Amazon Redshift string to list remove multiple single qoutesAmazon Redshift 字符串列出删除多个单引号
【发布时间】:2021-03-17 22:44:50
【问题描述】:

您好,我正在尝试从字符串中删除单个 qoutes,并想在列表中更改它, 我有像'''12345'',''12345'',12345''' 这样的输入我想要像('12345','12345,'12345') 这样的输出我已经尝试过trim('''12345'',''12345'',12345''', '''') 但它给了我56963','57296','57394 我想要列表而不是数组所以string_to_array 对我没有用。实际上,我需要它的精确格式,例如 DELETE 语句中 WHERE 子句中的('12345','12345,'12345') 列表,这也是它的要求,所以请帮我获得这个输出。提前致谢

【问题讨论】:

  • 嗨,有趣,不确定,也许REPLACE 函数可能有用
  • 如何在WHERE子句中使用?
  • 我正在尝试WHERE code in (replace('''12345'',''12345'',12345''', '''', '')),但它不起作用

标签: postgresql amazon-redshift


【解决方案1】:

我会通过几个步骤来解决这个问题。

首先删除字符串中的所有单引号:

REPLACE(column, "'", "")

第二次在逗号周围加单引号:

REPLACE(column, ",", "','")

第三次用单引号连接字符串的开头和结尾,你会得到这样的结果:

"('"||REPLACE(REPLACE(column, "'", ""), ",", "','")||"')"

这也可以通过使用 REGEX 和其他一些方法来解决,但这是首先想到的。这样,您就可以以对您有用的方式清理不必要的引号和结构。

希望它有效,因为我没有测试:)

【讨论】:

    猜你喜欢
    • 2017-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-20
    • 2019-03-01
    • 1970-01-01
    • 2013-07-05
    • 2016-12-08
    相关资源
    最近更新 更多