
Как обойти ошибку This version of MySQL doesn't yet support LIMIT IN/ALL/ANY/SOME subquery
Мне нужно было вытянуть id-шки, которые не входили бы в набор других id с лимитов в 100, но столкнулся со следующей ошибкой:
Эта версия MySQL пока еще не поддерживает 'LIMIT & IN/ALL/ANY/SOME subquery'
Изначально запросы выглядел как:
SELECT `id` FROM `maus` WHERE `file` = 1 AND `id` NOT IN (SELECT so.`id` FROM `maus` so LEFT JOIN `sangers` sa ON so.sangerId = sa.`id` GROUP BY sa.`id` ORDER BY so.playOnM DESC LIMIT 100)
Смотрел как ее решить и нашёл решение, что нужно использовать конструкции JOIN. Однако мне это не совсем подходило, но подтолкнуло использовать такую конструкцию как:
SELECT `id` FROM `maus` WHERE `file` = 1 AND `id` NOT IN (SELECT `id` FROM (SELECT so.`id` FROM `maus`so LEFT JOIN `sangers` sa ON so.sangerId = sa.`id` GROUP BY sa.`id` ORDER BY so.playOnM DESC LIMIT 100 ) as a)
Может кому - то пригодится данное решение :)
Еще статьи:


