是否可以检查一行是否包含字符串而没有空格?
假设我有一张上面的桌子。我想知道查询列是否包含一个字符串,该字符串可能具有与存储的连续空间不同的连续数字,反之亦然?
例如:第一行的查询是 select id, username from postgresql
,而我想知道是否存储在表中的查询是:
select id, username
from postgresql
这就是说,我想知道表中是否存在的缩进方式有所不同,因此具有不同的空间数量。
答案 0 :(得分:1)
您可以使用REGEXP_REPLACE;对于大数据集,这可能会非常慢。
SELECT * from table
where REGEXP_REPLACE('select id, username from postgresql ', '\s+$', '') = REGEXP_REPLACE(query, '\s+$', '')
答案 1 :(得分:0)
我想您可以这样说:
where $str ~ replace('select id, username from postgresql', ' ', '[\s]+')
注意:这假设您的字符串没有其他正则表达式特殊字符。