powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Соединить два запроса в один отчёт
10 сообщений из 10, страница 1 из 1
Соединить два запроса в один отчёт
    #39444605
NickSetner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Существует два запроса с одинаковыми полями, но с разными данными. Задача объединить два запроса. Если делать это через виздар, то получается белеберда. в Access работаю второй день, c SQL толком не знаком. Прошу вашей помощи.

код первого запроса: TRANSFORM Count(Link_Order_Pr.User_ID) AS CountOfUser_ID
SELECT Products.[Tech discription], License.Name
FROM ((Platform INNER JOIN (License INNER JOIN Link_LicienceUsageByPlatform ON License.ID_License = Link_LicienceUsageByPlatform.ID_License) ON Platform.ID_Platform = Link_LicienceUsageByPlatform.ID_Platform) INNER JOIN ((Application INNER JOIN (Products INNER JOIN Link_IS_P ON Products.Prod_ID = Link_IS_P.Prod_ID) ON Application.Serv_ID = Link_IS_P.Serv_ID) INNER JOIN Link_PlatformUsageByApp ON Application.ID_App = Link_PlatformUsageByApp.ID_App) ON Platform.ID_Platform = Link_PlatformUsageByApp.ID_Platform) INNER JOIN Link_Order_Pr ON Products.Prod_ID = Link_Order_Pr.Prod_ID
GROUP BY Products.[Tech discription], Application.Name, Platform.Name, License.Name
PIVOT Link_Order_Pr.OGL;


код второго запроса: TRANSFORM Count(Link_Order_Pr.User_ID) AS CountOfUser_ID
SELECT Products.[Tech discription], License.Name
FROM ((Application INNER JOIN (Products INNER JOIN Link_IS_P ON Products.Prod_ID = Link_IS_P.Prod_ID) ON Application.Serv_ID = Link_IS_P.Serv_ID) INNER JOIN (License INNER JOIN Link_LicienceUsageByApp ON License.ID_License = Link_LicienceUsageByApp.ID_License) ON Application.ID_App = Link_LicienceUsageByApp.ID_App) INNER JOIN Link_Order_Pr ON Products.Prod_ID = Link_Order_Pr.Prod_ID
GROUP BY Products.[Tech discription], Application.Name, License.Name, License.Amount, License.Units
PIVOT Link_Order_Pr.OGL;

я так понимаю надо их как то "склеить" чтобы они выводились корректно, но как это сделать не понимаю.
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444616
NickSetner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
5.
TRANSFORM Count(Link_Order_Pr.User_ID) AS CountOfUser_ID
SELECT Products.[Tech discription], License.Name
FROM ((Platform INNER JOIN (License INNER JOIN Link_LicienceUsageByPlatform ON License.ID_License = Link_LicienceUsageByPlatform.ID_License) ON Platform.ID_Platform = Link_LicienceUsageByPlatform.ID_Platform) INNER JOIN ((Application INNER JOIN (Products INNER JOIN Link_IS_P ON Products.Prod_ID = Link_IS_P.Prod_ID) ON Application.Serv_ID = Link_IS_P.Serv_ID) INNER JOIN Link_PlatformUsageByApp ON Application.ID_App = Link_PlatformUsageByApp.ID_App) ON Platform.ID_Platform = Link_PlatformUsageByApp.ID_Platform) INNER JOIN Link_Order_Pr ON Products.Prod_ID = Link_Order_Pr.Prod_ID
GROUP BY Products.[Tech discription], Application.Name, Platform.Name, License.Name
PIVOT Link_Order_Pr.OGL;



Код: sql
1.
2.
3.
4.
5.
TRANSFORM Count(Link_Order_Pr.User_ID) AS CountOfUser_ID
SELECT Products.[Tech discription], License.Name
FROM ((Application INNER JOIN (Products INNER JOIN Link_IS_P ON Products.Prod_ID = Link_IS_P.Prod_ID) ON Application.Serv_ID = Link_IS_P.Serv_ID) INNER JOIN (License INNER JOIN Link_LicienceUsageByApp ON License.ID_License = Link_LicienceUsageByApp.ID_License) ON Application.ID_App = Link_LicienceUsageByApp.ID_App) INNER JOIN Link_Order_Pr ON Products.Prod_ID = Link_Order_Pr.Prod_ID
GROUP BY Products.[Tech discription], Application.Name, License.Name, License.Amount, License.Units
PIVOT Link_Order_Pr.OGL;
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444629
NickSetner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть два запроса (queries). нужно сделать из них один отчёт (report). Запросы имеют одинаковые названия столбцов(описание, название и кол-во), но разные данные. Нужно, чтобы отчёт выводил данные из двух запросов
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444689
NickSetnerесть два запроса (queries). нужно сделать из них один отчёт (report). Запросы имеют одинаковые названия столбцов(описание, название и кол-во), но разные данные. Нужно, чтобы отчёт выводил данные из двух запросов Если бы это были обычные запросы на выборку, то:
Запрос1
UNION ALL
Запрос2

С перекрестными запросами я такого не пробовал. Попробуйте - расскажете.
Набор значений поля OGL - величина постоянная? И сколько их?
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444727
NickSetner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анатолий ( Киев ),

там перекрёстный запрос, в коде присутствует TRANSFORM. Если использовать с ним UNION ALL, то Access ругается на синтаксис
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444737
NickSetner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Анатолий ( Киев ),

Значение ОГЛ-просто текст
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444777
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
NickSetner,

Сохраните оба запроса по отдельности и выбирайте данные

Код: sql
1.
2.
3.
Select * from query1
Union
Select * from query2
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444820
NickSetnerСуществует два запроса с одинаковыми полями, но с разными данными. Ваши запросы строятся на разных связанных таблицах, а имена и кол-во столбцов в перекресном запросе (если не задан фиксированный перечень имен) зависят от имеющихся значений в PIVOT поле. Если в данный момент у вас в двух запросах все поля совпадают, то не факт, что при других данных будет тот же результат. Да и строить отчет на перекрестном запросе с неизвестным заранее кол-вом и именами полей - еще та песня.

Поэтому и спрашиваю - сколько вариантов значений присутствуют в поле OGL таблицы Link_Order_Pr. Если их немного и значения не меняются, то задачу можно решать иначе.

Если отчетом может быть и Excel файл, то задачу можно решить выгрузкой запросов один за другим.

ЗЫ. "виздар" это визард?
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39444836
studieren
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MrShinNickSetner,

Сохраните оба запроса по отдельности и выбирайте данные

Код: sql
1.
2.
3.
Select * from query1
Union ALL
Select * from query2


Лучше добавить "ALL", если конечно не требуется отсекать дубликаты 2-запроса.
...
Рейтинг: 0 / 0
Соединить два запроса в один отчёт
    #39445145
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Анатолий ( Киев )Если в данный момент у вас в двух запросах все поля совпадают, то не факт, что при других данных будет тот же результат
Хорошее замечание. Для использования в UNION необходимо будет задать список колонок, выводимых каждым запросом:
Код: sql
1.
PIVOT Link_Order_Pr.OGL IN ('значение1','значение2','значение3',...)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Соединить два запроса в один отчёт
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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