uuuu, если вас не смущает что вы с сервера несколько раз будете вытягивать одни и те-же данные - можете через union делать. но я не вижу зачем с бекенда спрашивать одну и ту-же запись несколько раз, если можно достать 1 раз и потом 3 раза с ней что-то сделать.
и да - не должно. `WHERE 7 IN(4,5,6,7,7,7);` вернет 1 и запись попадет в финальный датасет. Перечитайте документацию, этот синтаксис работает не так как вы думаете
Погодите, а какую задачу вы пытаетесь решить? Запрос извлекает вам те данные, которые есть в вашей таблице. Зачем вам строку с id=7 извлекать трижды?
И тем более не понятно, почему:
Только в IN(4,5,6,7,7,7) всегда разное количество данных, может дойти и до 5к
Расскажитье нам, что у вас в таблице и что вы хотите получить. Может вы вообще не тем путем идете.