Есть ли способ вернуть уникальные значения на основе запроса в MySQL без повторного выполнения одного и того же запроса для каждого столбца?Получить отличительные значения для каждого столбца без повторного выполнения одного и того же запроса
У меня есть несколько сложный запрос, который включает в себя несколько объединений и может возвращать 50 000 строк. Моя цель - получить все уникальные значения каждого столбца, как если бы я сделал:
SELECT DISTINCT column_a FROM ...
Для каждой колонки. Есть ли способ сделать это без многократного выполнения запроса?
Mysql внутренне кэширует запросы, поэтому последующие запросы будут выполняться быстрее. Но я думаю, что вам нужно кэширование на другом уровне? Memcache? Тогда вы рискуете запуском устаревших данных, если вы снова не выполняете свой полный запрос –
Хороший вопрос о кешировании. как вы думаете, будет ли быстрее или медленнее строить временную таблицу на основе исходных результатов? – billynoah
все зависит от ваших данных, ваших индексов, объема выделенного вами фрагмента процесса и количества других запросов, выполняемых между вашими запросами –