Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Синтаксис where var in (set) / 4 сообщений из 4, страница 1 из 1
14.05.2017, 10:37
    #39452682
Oreon20
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис where var in (set)
Добрый день.
Прошу прощенья если вопрос глупый, но сам разобраться что-то не могу:
Есть два запроса (упрощённо)
Код: plsql
1.
2.
1: select categ_list from tabla where 27 in (categ_list)
2: select categ_list from tabla where categ_list like '%27%'


первый возвращает строки с categ_list
27
27
27
тогда как второй возвращает больше:
12,27
27
27
27
3,10,27
Почему 2 дополнительных строки не возвращаются по первому запросу и как сделать, чтоб возвращались?
...
Рейтинг: 0 / 0
14.05.2017, 11:39
    #39452687
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис where var in (set)
Oreon20Почему 2 дополнительных строки не возвращаются по первому запросу и как сделать, чтоб возвращались?Потому что происходит приведение типа к целому числу. 12,27 приводится к 12. 3,10,27 приводится к 3.
А LIKE работает со строковыми типами.

Код: sql
1.
select categ_list from tabla where CONCAT(',',categ_list,',') like '%,27,%'



А если по-правильному, то надо переделывать структуры БД, выносить связь в отдельную таблицу и хранить в одной записи одну связь.
...
Рейтинг: 0 / 0
14.05.2017, 22:50
    #39452851
Oreon20
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис where var in (set)
Спасибо, что-то такое, я подозревал, пойду переделывать...
...
Рейтинг: 0 / 0
14.05.2017, 22:58
    #39452853
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Синтаксис where var in (set)
Код: sql
1.
WHERE FIND_IN_SET('27',categ_list)


Но правильнее последовать совету miksoft и нормализовать структуру хранения.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Синтаксис where var in (set) / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]