Почему условие с LIKE не срабатывает?

Здравствуйте. Есть стандартная битриксовская таблица с значениями свойств:
CREATE TABLE `b_iblock_element_right` (
	`IBLOCK_ID` INT(11) NOT NULL,
	`SECTION_ID` INT(11) NOT NULL,
	`ELEMENT_ID` INT(11) NOT NULL,
	`RIGHT_ID` INT(11) NOT NULL,
	`IS_INHERITED` CHAR(1) NOT NULL COLLATE 'utf8_unicode_ci',
	PRIMARY KEY (`RIGHT_ID`, `ELEMENT_ID`, `SECTION_ID`),
	INDEX `ix_b_iblock_element_right_1` (`ELEMENT_ID`, `IBLOCK_ID`),
	INDEX `ix_b_iblock_element_right_2` (`IBLOCK_ID`, `RIGHT_ID`)
)
COLLATE='utf8_unicode_ci'
ENGINE=InnoDB;

Если выполнять запрос:
select * from b_iblock_element_property where IBLOCK_ELEMENT_ID = 1304566 AND `IBLOCK_PROPERTY_ID` = 740 AND `VALUE` = 'f830c4d1-9865-11e2-a058-00269e0aabeb'

d51e0c430458403db3cc8d7bac47baad.png
То нормально находится значение в таблице. Но стоит заменить = на LIKE:
select * from b_iblock_element_property where IBLOCK_ELEMENT_ID = 1304566 AND `IBLOCK_PROPERTY_ID` = 740 AND `VALUE` LIKE 'f830c4d1-9865-11e2-a058-00269e0aabeb'

И результаты выполнения запроса пустые.
e2fcbaf1059b4381a52c9eedc1a2c62f.png
Подскажите, из-за чего такое поведение?
  • Вопрос задан
  • 248 просмотров
Пригласить эксперта
Ответы на вопрос 2
@lan143 Автор вопроса
Проблема решилась: оказалось, что в той записи, в конце стоял пробел. Т.е. значение в столбце VALUE выглядело вот так: 'f830c4d1-9865-11e2-a058-00269e0aabeb '.
Ответ написан
Комментировать
@G-M-A-X
У Вас вообще-то таблица с описанием и таблица, к которой шли запросы - это 2 разные таблицы... :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы