Dimadima965
20.01.2017 - 07:23
Доброго всем времени суток, возник вопрос следующего характера:
В таблице есть столбец - ids, в котором в каждой строке хранятся какие то id-шники вот в таком формате - 1,2,10,15,25,35,55,....(формат может быть любой ).В каждой строке набор id может быть разным.
Можно ли как то средствами mysql извлечь строки в которых например id = 55. Если да то какой тип должен быть у столбца, и собственно как это сделать. Всем спасибо заранее.
redreem
20.01.2017 - 07:53
... where ids like '55,%' or ids like '%,55,%' or ids like '%,55'
Не сработает, если там только одно значение - 55.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
bestxp
20.01.2017 - 10:14
регулярки в mysql юзай =)
TranceIT
20.01.2017 - 10:25
Я полагаю:
SELECT * FROM table WHERE id REGEXP ',[5]{2},';
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
Если одно значение, запятых не будет же.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
TranceIT
20.01.2017 - 10:48
Цитата (twin @ 20.01.2017 - 08:34) |
Если одно значение, запятых не будет же. |
'(,){0,1}[5]{2}(,){0,1}' ?
Проверить не на чем...
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
TranceIT
20.01.2017 - 11:03
'(,){0,1}($id){1}(,){0,1}'
P.S. Хороший тамада. И конкурсы интересные.
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
Цитата (TranceIT @ 20.01.2017 - 07:03) |
P.S. Хороший тамада. И конкурсы интересные. |
id= 55 а в строке 100, 555, 556 ??
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
walerus
20.01.2017 - 11:50
twinwhere `ids` like '55,%' or `ids` like '%,55,%' or `ids` like '%,55' or `ids` = '55'
зы: опередил B)
walerusЭто проканает. Хотя я бы по определению не стал хранить множественные значения. Чревато.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
делаешь вторую таблицу связей. заносишь туда все иды к нужной тебе записи по одному на строку. и делаешь все что хочешь.
redreem
20.01.2017 - 14:49
twin
depp
данная денормализация довольно широко применяется и имеет право на жизнь.