Запрос данных

Содержание раздела
  1. Примеры
    1. Запрос из логической таблицы
    2. Запрос из логического представления
    3. Запрос из материализованного представления
    4. Запрос из standalone-таблицы
    5. Запрос из соединения standalone-таблицы и логической таблицы

Система позволяет запрашивать небольшие объемы данных. Данные можно запрашивать из следующих сущностей и их соединений:

Под небольшим объемом данных подразумевается результат, содержащий десятки строк. Чтобы получить большой объем данных, используйте выгрузку данных.

Чтобы запросить данные, выполните SELECT. В запросах к логическим таблицам, логическим и материализованным представлениям можно указать СУБД хранилища для исполнения запроса, иначе, если СУБД не указана, система выбирает данные из наиболее оптимальной СУБД.

На рисунке ниже показан пример запроса из логической таблицы sales с двумя строками в ответе.

Запрос небольшого объема данных

Примеры

Запрос из логической таблицы

-- выбор логической базы данных marketing в качестве базы данных по умолчанию
USE marketing;

-- запрос данных из логической таблицы sales
SELECT s.store_id, SUM(s.product_units) AS product_amount
FROM sales AS s
GROUP BY (s.store_id)
ORDER BY product_amount DESC
LIMIT 20;

Запрос из логического представления

-- запрос данных из логического представления stores_by_sold_products
SELECT sold.store_id, sold.product_amount
FROM marketing.stores_by_sold_products AS sold;

Запрос из материализованного представления

-- запрос данных из материализованного представления sales_by_stores
SELECT * FROM marketing.sales_by_stores
WHERE store_id IN (1234, 1235, 1236);

Запрос из standalone-таблицы

-- запрос данных из standalone-таблицы, на которую указывает внешняя readable-таблица payments_ext_read_adg
SELECT p.agreement_id, p.code, SUM(p.amount) AS amount, p.currency_code 
FROM marketing.payments_ext_read_adg AS p 
GROUP BY p.agreement_id, p.code, p.currency_code

Запрос из соединения standalone-таблицы и логической таблицы

-- запрос данных из логической таблицы clients и standalone-таблицы, на которую указывает 
--   внешняя readable-таблица agreements_ext_read_adp
SELECT a.id, a.client_id, c.last_name, c.first_name, c.patronymic_name 
FROM marketing.agreements_ext_read_adp AS a
LEFT JOIN marketing.clients FOR SYSTEM_TIME AS OF delta_num 9 AS c
  ON a.client_id = c.id