Postgres buitin功能逃脱特殊性格

时间:2017-05-10 14:58:41

标签: sql postgresql escaping

我想根据Postgres SIMILAR TO表示法对2列进行比较,在下面的示例中,它是~*。让我们调用列:COLUMN1和COLUMN2。 它适用于大多数行,然后在进一步调查之后,如果任一列的值具有" ++"查询失败。

SELECT
CASE
   WHEN 'gcc' ~* 'gcc++' THEN 1
   ELSE 2
END

带有以下消息

ERROR:  invalid regular expression: quantifier operand invalid

显然上面的gcc ++字符串需要转义。

问题: postgres中有Postgres内置函数可以逃避列值,以便比较更安全吗?我在想下面的事情......

SELECT
CASE
   WHEN escapeMe(COLUMN1) ~* escapeMe(COLUMN2) THEN 1
   ELSE 2
END
FROM TABLE_T1

0 个答案:

没有答案
相关问题