Всем привет!
В документации не говорится о каких либо ограничениях на количество значений во WHERE IN().
Но может я столкнусь с какими-то подводными камнями если буду использовать такую конструкцию, например для поиска пользователей, на которых подписан юзер?
На сколько тяжела эта конструкция? Может при большом количестве значений я положу БД?
Например у меня пока получается такой запрос:
SELECT al.`mode`, al.`mode_id`
FROM `agregate_lenta` al
LEFT JOIN `blogs` bl ON bl.`id` = al.`mode_id` AND al.`mode` = 'blogs'
LEFT JOIN `logs` l ON l.`id` = al.`mode_id` AND al.`mode` = 'logs'
WHERE (bl.`status` IN(1,2) OR l.`status` IN (1,2)) AND (bl.`user_id` IN (411451209,411451206,411451188,411451207)) OR (l.`user_id` IN (2141183,85,1))
Но если пользователь подпишется скажем на 10тыс блогов, то последний IN будет содержать 10тыс ID