|
|
|
| Здравствуйте!
У меня в базе имеется таблица, в ней следующее поле -> ID_SPECZ, оно в себе хранить строчку чисел 1 12 34 разделенное пробелами. Каким образом мне выбрать из базы только например 1 или 34? | |
|
|
|
|
|
|
|
для: sanchescom
(23.11.2009 в 10:17)
| | т.е. у Вас поиск по полю ID_SPECZ?
Если честно, то для хранения нескольких значений в одном поле нужны достаточно веские основания и уж точно от поиска по такому полю нужно отказаться.
Я бы посоветовал изменить базу. | |
|
|
|
|
|
|
|
для: Valick
(23.11.2009 в 10:33)
| | Изначально было по другому, все хранилось в отдельной табличке,но столкнулся с некими трудностями, не буду объяснять какими уже не помню). Переделал...
Там поиск не только по этому полю..ну в общем сейчас уже поздно что-либо менять. Надо как-то этот способ реализовать. Т.е. совпадения LIKE'ом он ищет. Нет ли функции в mysql при помощи которой можно искать в строке? | |
|
|
|
|
|
|
|
для: sanchescom
(23.11.2009 в 14:41)
| | переделывайте назад.
сумели испортить - найдите силы исправить. | |
|
|
|
|
|
|
|
для: sanchescom
(23.11.2009 в 14:41)
| | все хранилось в отдельной табличке,но столкнулся с некими трудностями
не факт что было правильно, поэтому и были трудности.
но то что неправильно сейчас - это факт, оттого и трудности не перестают возникать :) | |
|
|
|
|
|
|
|
для: Valick
(23.11.2009 в 15:05)
| | Ну может кто знает способ или решение, сейчас переделывать никак!!! Что еще можно попробовать? | |
|
|
|
|
|
|
|
для: sanchescom
(23.11.2009 в 10:17)
| | может так получится:
SELECT * FROM `tbl` WHERE CONCAT(`ID_SPECZ`, ' ') REGEXP '(1|34) '
|
| |
|
|
|
|
|
|
|
для: а-я
(24.11.2009 в 01:13)
| | Подскажите пожалуйста, а зачем тут конкатенацию делать или я плохо понимаю возможности данной функции?!=) | |
|
|
|
|
|
|
|
для: sanchescom
(24.11.2009 в 11:09)
| | у Вас строка "1 2 3 4", а регулярка REGEXP '(1|34) ' - после числа обязат пробел
надо пробел в конце, чтоб регулярка сработала и на послед. число
может и лучше есть способ.. я только до этого допер | |
|
|
|