powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Перенос значений в temporary table
2 сообщений из 2, страница 1 из 1
Перенос значений в temporary table
    #38750912
Стас0н
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем!
Есть вот такой запрос:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
select 
	adnest_mapping_composite.effective_adnest_id, 
	adnest_mapping_composite.ratio,
	tab2.*
from adnest_mapping_composite
inner join 
	(
		select 
			tab.adnest_id,
			sum(tab.frequency between 1 and 10) as "1-10",
			sum(tab.frequency between 11 and 50) as "11-50",
			sum(tab.frequency between 51 and 100) as "51-100",
			sum(tab.frequency between 101 and 500) as "101-500",
			sum(tab.frequency between 501 and 1000) as "501-10000"
		from
		(
			select adnest_id, visitor_id, count(visitor_id) as frequency
			from hist_impressions
			inner join timeslot t on t.timeslot_id = hist_impressions.timeslot_id
			where start_date between '2014-06-01 00:00:00' and '2014-09-08 00:00:00'
			group by adnest_id, visitor_id
			order by adnest_id, count(visitor_id) desc
		) tab
		group by 
			tab.adnest_id
	) tab2
on tab2.adnest_id = adnest_mapping_composite.adnest_id
group by 
	effective_adnest_id,
	adnest_id
;



Все отлично работает, НО! если нужно поменять интервалы (т.е. сделать не "1-10" и "11-50", а какие-то другие), то приходится вручную дописывать нужную строчку в запрос. Можно ли как-то от этого отойти?
Например, чтобы все интервалы хранились в какой-нибудь temporary table - чтобы в случае изменения интервалов приходилось бы мало переписывать

Т.е. хранить как-то так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
create temporary table ranges 
(
   s int not null,
   e int not null
);

insert into ranges (s, e) values
   (0, 100),
   (101, 200),
   (201, 300),
   (301, 1000),
   (1001, 1500),
   (1501, 10000)
;
...
Рейтинг: 0 / 0
Перенос значений в temporary table
    #38750997
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор: Пожалуйста, не надо дублировать топики по одному и тому же вопросу.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Перенос значений в temporary table
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]