Мне нужно вернуть значения, используя оператор IN () на основе значений оператора GROUP_CONCAT () .
Этот запрос
SELECT GROUP_CONCAT(QUOTE(ID)) FROM primary_batch
по праву возвращает
'4','2','6','3','5','1'
Однако этот запрос
SELECT * FROM secondary_batch WHERE id IN (SELECT GROUP_CONCAT(QUOTE(ID)) FROM primary_batch)
не возвращает никакого вывода
Однако, если я размещу фактические значения
SELECT * FROM secondary_batch WHERE id IN ('4','2','6','3','5','1')
Я получаю ожидаемый результат.
Я не могу понять, почему это происходит. Я использую MySQL v5.7.
Я открыт для использования других решений, основанных на хранимых процедурах, для достижения этого результата, если действительно существует ограничение на использование операторов GROUP_CONCAT / IN таким образом.