Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Группировка в объединенном через UNION запросе / 5 сообщений из 5, страница 1 из 1
26.10.2005, 13:51
    #33344922
Mariuz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка в объединенном через UNION запросе
Задача такая. Есть две таблицы, на их базе строится запрос объединенный UNION. Но при этом должна производиться группировка причем не по каждой таблице в отдельности, а по результирующему множеству. Group by в отличие от Order by на объединенный запрос не пишется. Попробовал результат объединенного запроса передать в переменную типа ROWTYPE, но я так понял что переменные этого типа могут хранить только одну запись. Представление
использовать не хочу так как этот запрос будет использоваться достаточно редко, а нагружать лишний раз сервер не хотелось бы. Думаю что остается единственный вариант с временной таблицей. Но в этом свете возникает вопрос если временная таблица создается из хранимой процедуры, она удаляется после выполнения процедуры или при завершении сессии вызвавшей процедуру? Какие есть мнения по этому поводу? Буду благодарен за любые ответы.
...
Рейтинг: 0 / 0
26.10.2005, 13:55
    #33344937
mwolf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка в объединенном через UNION запросе
MariuzЗадача такая. Есть две таблицы, на их базе строится запрос объединенный UNION. Но при этом должна производиться группировка причем не по каждой таблице в отдельности, а по результирующему множеству. Group by в отличие от Order by на объединенный запрос не пишется. Попробовал результат объединенного запроса передать в переменную типа ROWTYPE, но я так понял что переменные этого типа могут хранить только одну запись. Представление
использовать не хочу так как этот запрос будет использоваться достаточно редко, а нагружать лишний раз сервер не хотелось бы. Думаю что остается единственный вариант с временной таблицей. Но в этом свете возникает вопрос если временная таблица создается из хранимой процедуры, она удаляется после выполнения процедуры или при завершении сессии вызвавшей процедуру? Какие есть мнения по этому поводу? Буду благодарен за любые ответы.

Сильно сложно.
Так чем плохо?:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT field1, field2, count(*)
FROM
 (SELECT *
 FROM table1
 UNION
 SELECT *
 FROM table2
 ) as t
GROUP BY field1, field2
...
Рейтинг: 0 / 0
26.10.2005, 13:57
    #33344945
XM
XM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка в объединенном через UNION запросе
Дык а чем не подходит:
Код: plaintext
1.
SELECT ... FROM (SELECT .... UNION SELECT ...) as some_name GROUP BY ...
???
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
26.10.2005, 14:06
    #33344987
Mariuz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка в объединенном через UNION запросе
Я так понимаю не работает конструкция FROM (select....)
...
Рейтинг: 0 / 0
26.10.2005, 15:53
    #33345444
KRED
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Группировка в объединенном через UNION запросе
MariuzЯ так понимаю не работает конструкция FROM (select....)

Значить очень старая версия постгреса ...
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Группировка в объединенном через UNION запросе / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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