У меня есть две таблицы связанных данных.Объединение агрегированных запросов
- Таблица 1 - Все Торговая История брокером
- Таблица 2 - Все торговые Breaks (торговые операции, которые имели ошибки/различия/вопросы)
Я создал запрос, чтобы Всего количество сделок по Брокер из таблицы 1
Я создал запрос к общей сумме количества «Перерывы» Брокер из таблицы 2
затем я создал запрос, чтобы объединить два предыдущие Запросы и производят некоторые статистические данные
Пример:
Broker Total Trades Total Breaks Break %
Goldman 10 4 40%
Morgan 10 2 20%
Вместо того, чтобы создать 3 запросов - есть способ создать 1 запрос, который достигает тот же результат? Я хочу выполнить более подробный анализ/отчеты, не заливая базу данных множеством индивидуальных запросов. SQL-кода Ниже
Первый запрос:
SELECT DISTINCTROW [All Breaks].Broker, Sum([All Breaks].TradeCount) AS
[Sum Of TradeCount]
FROM [All Breaks]
GROUP BY [All Breaks].Broker;
Второй запрос:
SELECT DISTINCTROW [All Trades].Broker, Sum([All Trades].TradeCount) AS
SumOfTradeCount
FROM [All Trades]
GROUP BY [All Trades].Broker;
конец Результат: Объединение
SELECT [Broker List].Broker, [All Breaks Query].[Sum Of TradeCount], [All
Trades Query].SumOfTradeCount, [Sum Of TradeCount]/[SumOfTradeCount] AS
Percentage
FROM ([Broker List] INNER JOIN [All Breaks Query] ON [Broker List].Broker
= [All Breaks Query].Broker) INNER JOIN [All Trades Query] ON [Broker
List].Broker = [All Trades Query].Broker;
Большое спасибо!
Если честно - некоторые из способов, я вокруг проблем можно перемещаться, как это (потому что доступ не столь мощный, как некоторые из новых RDMS), должен был положить их результаты запроса во временных таблицах. Затем вы можете использовать результирующие наборы как данные таблицы и не должны ограничиваться любыми ограничениями доступа SQL (которые вы можете или не можете запускать) –
Не пытаясь реплицировать, я бы сказал, что ваша работа выглядит очень хорошо. Анализ SQL основан на стекировании или вложенности, и иногда кажется, что вы «наводнены», но объединение в меньшее количество объектов часто дорого стоит вам на способности поддерживать код. – Smandoli
Почему вы используете DistinctRow? Спасибо. – NoChance