Удалите GROUP BY
(и внешний запрос):
select 2018 as year, coalesce(sum(vol), 0) as vol
from schema.fact_data f join
schema.period_data p
on f.period_tag = p.tag join
schema.product_data pr
on f.product_tag = pr.tag join
schema.market_data m
on fd.market_tag = m.tag
where "retailer" = 'MadeUpRetailer' and
"product_tag" = 'FakeProductTag' and
"year" = '2018';
Запрос агрегации без GROUP BY
всегда возвращает ровно одну строку, так что это должно делать то, что вы хотите.
РЕДАКТИРОВАТЬ:
Запрос будет выглядеть примерно так:
select v.yyyy as year, coalesce(sum(vol), 0) as vol
from (values (2018), (2019)) v(yyyy) left join
schema.fact_data f
on f.year = v.yyyy left join -- this is just an example. I have no idea where year is coming from
schema.period_data p
on f.period_tag = p.tag left join
schema.product_data pr
on f.product_tag = pr.tag left join
schema.market_data m
on fd.market_tag = m.tag
group by v.yyyy
Однако вы должны переместить условия where
в соответствующие предложения on
. Я понятия не имею, откуда берутся колонны.
Я почти уверен, что вы не можете, но вы можете клонировать EBS и прикрепить его к другому экземпляру.
Это полезно для фиксированных наборов данных или для тестирования на «реальном» данные, но не позволяет более 1 экземпляру работать с одним хранилищем блоков
No, this is like using a hard drive in two computers.
If you want shared data, you can setup a server that all your instances can access. If you are wanting a simple storage area for all your instances, you can use Amazon's S3 storage service to store data that is distributed and scalable.
Moving to the cloud, you can have the exact same setup, but you can possibly replace the fileserver with S3, or have all your instances connect to your fileserver.
You have a lot of options, but sharing a hard drive between instances is probably not the best option.
Нет, согласно документам EBS: «Том может быть присоединен только к одному экземпляру за раз».
Как вы в настоящее время используете общее хранилище? Если это просто для обслуживания файлов с файлового сервера, рассматривали ли вы возможность настройки системы, чтобы вы могли передавать определенные запросы процессу на файловом сервере вместо того, чтобы веб-серверы обслуживали эти файлы?