Оператор PostgreSQL LIKE не соответствует дефису - PullRequest
0 голосов
/ 20 августа 2011

У меня проблема с оператором LIKE в PostgreSQL.Он не соответствует шаблонам, которые содержат символ -.Я пытался экранировать эти символы с помощью опции ESCAPE, но она все еще не работает.

Запрос:

select * from footable where trascrizione like '% [---]is Abraam %';

Пример данных (содержимое столбца trascrizione):

[---]is Abraam [e]t Ise[---] / ((crux quadrata))

Как я могу решить эту проблему?

Ответы [ 2 ]

1 голос
/ 20 августа 2011

Этот шаблон не будет соответствовать, потому что до [---]is Ambraam нет пробела.В вашем шаблоне есть пробел между % и [ символами, и он требует, чтобы это пространство было в ваших данных.Попробуйте LIKE '%[---]is Abraam %'.

0 голосов
/ 20 августа 2011

Пожалуйста, покажите код. У меня нет проблем:

SELECT * FROM a WHERE a LIKE '%-' AND b LIKE '%-%' AND c LIKE '-%';
  a   | b |  c   | d | e 
------+---+------+---+---
 foo- | - | -bar |   | 
(1 Zeile)
...