Я использую следующий запрос для фильтрации записей из моей таблицы:IN оператор не работает со строкой значений
SELECT * FROM teacher_info WHERE teaching_locations in ('Salt Lake City');
Этого возвращение пустого результата, даже если я следующие значения сохраняются в таблице в teaching_locations
колонки : newyork,Salt Lake City,los angeles
.
Я попытался использовать другие значения, и он отлично работает с другими значениями, за исключением значений, имеющих промежутки между пробелами. Например, запрос работает нормально, если значение столбца равно «newyork
».
Ваш запрос работает нормально для меня. http://sqlfiddle.com/#!9/2f11a/2 –
Существует связанный с вами вопрос, который может быть вам полезен - [полезный вопрос] (http://stackoverflow.com/questions/4155873/find-in-set -vs-in) –
Это то, что происходит, когда вы храните несколько значений в одном столбце - это не реляционный способ. Используйте таблицу соединений, и ваши запросы будут проще и быстрее. –