Сегодня я отправил ответ с таким запросом
SELECT * FROM table_name where column_name IN (val1,val2,...)
Другой пользователь отправил ответ на запрос, подобный этому
SELECT * FROM table_name where val1 IN (column_name)
Как вы можете видеть здесь, позиция column_name и значения взаимозаменяемы.
Из документов Mysql
expr IN (значение,...)
Возвращает 1, если expr равно любому из значений в списке IN, else возвращает 0. Если все значения являются константами, они вычисляются в соответствии с типом выражения и сортируются. Затем поиск объекта осуществляется с помощью двоичного поиска. Это означает, что IN очень быстро, если список значений IN целиком состоит из констант.
mysql> SELECT 2 IN (0,3,5,7);
-> 0
mysql> SELECT 'wefwf' IN ('wee','wefwf','weg');
-> 1
Как ясно говорится, что приведенный выше (мой запрос) правильный. но оба вышеупомянутых запроса производят один и тот же вывод.
Также почему другой подход не указан в Документация Mysql?
Этот вопрос служит каноническим источником информации об использовании IN. Его цель - иметь подробные, высококачественные ответы, подробно описывающие правильное использование IN в запросах.