Вместо того, чтобы пытаться преобразовать [1][2][3][4]
в формат CSV, более простым способом было бы использовать REGEXP
. Например, если вы хотите найти идентификатор 3, вы можете использовать:
SELECT *
FROM yourTable
WHERE user_orders REGEXP '[[:<:]]3[[:>:]]';
Если вы действительно хотите преобразовать свои данные в чистый CSV, вы можете сделать серию замен, например,
SELECT *
FROM yourTable
WHERE FIND_IN_SET('3', REPLACE(REPLACE(REPLACE(user_orders, '][', ','),
'[', ''), ']', '')) > 0;
Но в целом, вам следует избегать хранения либо [1][2][3][4]
, либо 1,2,3,4
, потому что оба они являются ненормализованными данными и, таким образом, сильно ограничивают способность MySQL делать что-либо.