Почему значения не вставляются в запрос mysql2? - PullRequest
0 голосов
/ 02 ноября 2019

Подскажите, пожалуйста? Почему подстановка значения mysql2 не работает внутри оператора IN?

Я делаю это, но ничего не работает. Подставляется только первый символ массива (число 6)

"select * from products_categories WHERE category_id IN (?)", [6,3]);

Конечно, вы можете сделать это следующим образом: IN (?,?,?,?,?,?,?,? ,?,?) [6,3,1,1,1,1,1,1,1,1,1]

Но это неправильно, я подумал, что IN следует автоматически заменить намассив = (

1 Ответ

0 голосов
/ 02 ноября 2019

Я не использовал это, но мое внутреннее чувство говорит о том, что элементы массива отображаются на вопросительные знаки на основе индексов, поэтому в вашем случае 6 связывается с первым ?, а 3 ищет другой, но нене могу найти.

На вашем месте я бы постарался убедиться, что мой первый элемент массива на самом деле массив, поэтому я бы переписал его:

"select * from products_categories WHERE category_id IN (?)", [[6,3]]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...