Я выполняю запрос, в котором вы ищете значение массива. Я нашел решение, как это сделать в Stackoverflow, однако, похоже, он не дает результат, который я ожидал бы. Вот примеры, вы можете сказать мне, где я неправильно, пожалуйста:В Array не работает как ожидалось
У меня есть таблица со столбцом называется департаментами и некоторые строки примеров содержат значения, как:
1: 2,4
2: 1,7,2,8,9,4
3: 4, 2
я выполнить запрос на этом:
SELECT * FROM udf_multi_value WHERE udfdefid = '1' AND department IN (1, 7, 2, 8, 9, 4);
Это возвращает все строки в результатах, что я и ожидал. Однако, когда я бегу:
SELECT * FROM udf_multi_value WHERE udfdefid = '1' AND department IN (2, 4)
он возвращает только строки 1 и 3. В 2 и 4 находятся во всех строках я wuld Аве думал, он должен вернуть строку 2, а также.
Любая помощь очень ценится.
Нормализация таблиц? [Посмотрите на 'FIND_IN_SET'] (http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_find-in-set) – Kermit
Я должен добавить, что все строки имеют значение udfdefid 1, так что это не проблема. – Mediatomcat
SHOW CREATE TABLE udf_multi_value; –