Postgresql包含where子句

时间:2013-03-13 06:09:20

标签: sql postgresql select where-clause contains

postgres中是否有 contains 的功能?可以在where clause中使用来检查传递的字符串是否包含在列中?

2 个答案:

答案 0 :(得分:17)

您可以使用position()。如果未找到子字符串,则返回零:

position(col2 in col1) <> 0

答案 1 :(得分:7)

有很多方法可以解决这个问题:

  1. 使用likeilike和/或SIMILAR TO以及||。要处理列,例如:

    WHERE col1 ilike '%' || col2 || '%';
    
  2. 使用位置作为NPE的答案

  3. 您也可以使用regexp_matches,但这更复杂。