Mysql LIKE script игнорирует шаблон конечного пробела

У меня есть ценность 8122 который имеет конечный пробел в конце. Почему мой sql-скрипт этого не улавливает? Это сценарий sql:

select * from values where value like '% ' or value like ' %';

Как сделать LIKE более чувствительным в этом смысле?

1 ответ

Решение

Проверяйте длину црнгсм до и после стрижки

значения - это зарезервированное слово в mysql

SELECT 
    * 
FROM `values `
WHERE LENGTH(value) > LENGTH(TRIM(value));

Если вы хотите проверять только правые пробелы, используйте RTRIM, а для левого LTRIM

Если вы ищете только одно место, вы должны проверить

SELECT 
    * 
FROM `values `
WHERE LENGTH(value)-1 = LENGTH(RTRIM(value))
    OR LENGTH(value)-1 = LENGTH(LTRIM(value));
Другие вопросы по тегам