Для больших наборов данных, какой вариант лучше множественного выбора по сравнению с регистром
ПРИМЕР КЕЙСА:
SELECT SUM(CASE WHEN(created_at > (CURRENT_DATE - INTERVAL '1 days')) THEN 1 ELSE 0 END) as day_count,
SUM(CASE WHEN(created_at > (CURRENT_DATE - INTERVAL '1 months')) THEN 1 ELSE 0 END) as month_count,
SUM(CASE WHEN(created_at > (CURRENT_DATE - INTERVAL '3 months')) THEN 1 ELSE 0 END) as quater_count,
SUM(CASE WHEN(created_at > (CURRENT_DATE - INTERVAL '6 months')) THEN 1 ELSE 0 END) as half_year_count,
SUM(CASE WHEN(created_at > (CURRENT_DATE - INTERVAL '1 years')) THEN 1 ELSE 0 END) as year_count,
count(*) as total_count from wallets;
Запрос множественного выбора:
SELECT count(*) from wallets where created_at > CURRENT_DATE - INTERVAL '1 days';
SELECT count(*) from wallets where created_at > CURRENT_DATE - INTERVAL '1 months';
SELECT count(*) from wallets where created_at > CURRENT_DATE - INTERVAL '3 months';
SELECT count(*) from wallets where created_at > CURRENT_DATE - INTERVAL '6 months';
SELECT count(*) from wallets where created_at > CURRENT_DATE - INTERVAL '1 years';
SELECT count(*) from wallets;
требования состоят в том, чтобы найти количество кошельков по дням, месяцам, 3 месяцам, 6 месяцам и годам.Если я выберу множественный выбор, то для извлечения данных потребуется 6 запросов.
, используя регистр коммутации, мы можем получить данные в одном запросе, но я не уверен, что лучше использовать регистр коммутатора для большихнаборы данных.
Пожалуйста, найдите анализ запросов ниже, у меня есть только 10 записей в моей БД:
Анализ запросов случая:
Анализ нескольких запросов: