【问题标题】:Escape single quote in redshift sql in a column value在列值中转义redshift sql中的单引号
【发布时间】:2020-10-15 11:29:21
【问题描述】:

根据所附图像,表“c”中的列 tlist 具有用逗号分隔的值,例如“HCC19”、“HCC18”。 我正在尝试在 redshift 的查询条件中使用列值..

where a.risk_factor in (c.tlist) .. ..但它没有给出预期的结果可能是因为它将单个字符串的值作为' where a.risk_factor in( ' 'HCC19','HCC18' ') 而不是表达式 where a.risk_factor in('HCC19','HCC18') 中所要求的

这种情况有什么解决办法吗?

【问题讨论】:

    标签: sql amazon-redshift


    【解决方案1】:

    您可以在此处尝试使用LIKE 比较:

    WHERE c.tlist LIKE '%''' || a.risk_factor || '''%';
    

    上述LIKE 表达式比较'HCC19','HCC18' 搜索单引号风险因素。如果风险因素已经带有单引号,那么只需使用:

    WHERE c.tlist LIKE '%' || a.risk_factor || '%';
    

    【讨论】:

      猜你喜欢
      • 2018-06-08
      • 2014-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多