Покинул форум
Сообщений всего: 22
Дата рег-ции: Июль 2013
Помог: 0 раз(а)
Здравствуйте.
Кратко о проблеме: есть в базе строка "2,45,85,33,22,25", как при помощи LIKE определить есть ли в этой строке "2"?
LIKE '%2%' не подходит, т.к. это условие не учитывает разделение запятой и среагирует на ",22,".
т.е. как построить запрос LIKE, чтобы он нашел число, окруженное запятыми с обеих сторон, либо только с одной стороны, либо вообще не окружен?
Или другими словами, вокруг искомого теста может быть либо запятая, либо ничего
Когда нормальный человек, уезжая из дома одевает на жену пояс верности, веб-дизайнер ставит на нее счетчик...
allasan
Отправлено: 10 Января, 2014 - 13:13:21
Новичок
Покинул форум
Сообщений всего: 22
Дата рег-ции: Июль 2013
Помог: 0 раз(а)
Странно, но я везде видел что делается именно так. В самых популярных скриптах.
А что за таблица связей?
IllusionMH
Отправлено: 10 Января, 2014 - 13:22:15
Активный участник
Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011 Откуда: .kh.ua
Помог: 242 раз(а)
allasan пишет:
Странно, но я везде видел что делается именно так.
allasan, пруф или не было. Ни в одной нормальной системе не будут городить такую фигню. вместо нормальной организации связи 1-к-многим, многие-к-многим.
Загляните в любимый поисковик с словами выделенными курсивом
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Есть:
таблица1 чего-то, имеет id
таблица2 чего-то другого, тоже имеет свой id (tid, чтобы не путаться).
Цель: сделать множественные связи между ними.
Решение:
Создать таблицу связей, включающую в себя всего 2 поля: id из, соответственно, обеих таблиц. Уникальный ключ на оба поля (при необходимости, такой же ключ с обратным порядком полей)
Одна строка в таблице - одна однозначная связь.
----- PostgreSQL DBA
allasan
Отправлено: 10 Января, 2014 - 14:17:34
Новичок
Покинул форум
Сообщений всего: 22
Дата рег-ции: Июль 2013
Помог: 0 раз(а)
Не, это все слишком усложняет и влечет за собой много переделок уже готового, вобщем всем спасибо, думаю сделаю по другому
Мелкий
Отправлено: 10 Января, 2014 - 14:22:41
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Это всё упрощает и кардинально улучшает производительность поиска по связям.
Много переделывать - да, застарелые костыли всегда сложно выпиливать.
----- PostgreSQL DBA
DelphinPRO
Отправлено: 10 Января, 2014 - 14:44:25
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
allasan пишет:
и влечет за собой много переделок уже готового,
чем дальше в лес - тем злее волки. иногда все же стоит выпилить откровенный костыль, чтобы потом не мучится.. впрочем, дело хозяйское.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.