Metabase SQL графики и запросы. Metabase base. Easy Metabase

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Работа с графиками.

Предварительная настройка:

sudo apt install -y openjdk-21-jre-headless

sudo useradd -p your_password -s /bin/false -U -m metabase

sudo vim /etc/default/metabase

MB_DB_TYPE=postgres

MB_DB_DBNAME=metabase_db

MB_DB_PORT=5432

MB_DB_USER=metabase_user

MB_DB_PASS=your_db_user_password

MB_DB_HOST=localhost

sudo chmod 640 /etc/default/metabase

Установка

wget https://downloads.metabase.com/v0.53.3/metabase.jar
sudo mv metabase.jar /home/metabase/

sudo vim /etc/systemd/system/metabase.service

[Unit]
Description=Metabase server
After=network.target

[Service]
WorkingDirectory=/home/metabase
ExecStart=/usr/lib/jvm/java-21-openjdk-amd64/bin/java --add-opens java.base/java.nio=ALL-UNNAMED -jar /home/metabase/metabase.jar
EnvironmentFile=/etc/default/metabase
User=metabase
Type=simple
Restart=on-failure

[Install]
WantedBy=multi-user.target

java -jar metabase.jar

Операторы SQL для построения графиков в Metabase

  1. SELECT
    Выбор столбцов или вычисляемых значений для отображения на графике.
    Пример:

    SELECT column1, column2 FROM table;
    
  2. FROM
    Указание таблицы или источника данных.
    Пример:

    SELECT * FROM sales_data;
    
  3. WHERE
    Фильтрация строк по условию.
    Пример:

    SELECT * FROM sales_data WHERE region = 'Europe';
    
  4. GROUP BY
    Группировка данных для агрегации.
    Пример:

    SELECT region, SUM(sales) FROM sales_data GROUP BY region;
    
  5. ORDER BY
    Сортировка данных по указанному столбцу.
    Пример:

    SELECT * FROM sales_data ORDER BY date DESC;
    
  6. LIMIT
    Ограничение количества возвращаемых строк.
    Пример:

    SELECT * FROM sales_data LIMIT 10;
    
  7. JOIN
    Объединение данных из нескольких таблиц.
    Пример:

    SELECT * FROM sales s JOIN products p ON s.product_id = p.id;
    
  8. SUM, COUNT, AVG, MIN, MAX
    Агрегатные функции для вычисления суммы, количества, среднего, минимума или максимума.
    Пример:

    SELECT SUM(sales) FROM sales_data;
    
  9. DATE_TRUNC
    Округление даты до указанной точности (день, месяц, год и т.д.).
    Пример:

    SELECT DATE_TRUNC('month', date) FROM sales_data;
    
  10. EXTRACT
    Извлечение части даты (год, месяц, день и т.д.).
    Пример:

    SELECT EXTRACT(YEAR FROM date) FROM sales_data;
    
  11. CASE
    Условные выражения для создания новых столбцов.
    Пример:

    SELECT CASE WHEN sales > 1000 THEN 'High' ELSE 'Low' END FROM sales_data;
    
  12. OVER, PARTITION BY
    Оконные функции для вычислений внутри групп строк.
    Пример:

    SELECT AVG(sales) OVER (PARTITION BY region) FROM sales_data;
    
  13. ROW_NUMBER, RANK
    Присвоение номеров строкам или ранжирование.
    Пример:

    SELECT ROW_NUMBER() OVER (ORDER BY sales DESC) FROM sales_data;
    
  14. UNION
    Объединение результатов нескольких запросов.
    Пример:

    SELECT * FROM sales_2022 UNION SELECT * FROM sales_2023;
    
  15. WITH (CTE)
    Создание временных таблиц для сложных запросов.
    Пример:

    WITH top_products AS (
        SELECT product_id FROM sales_data ORDER BY sales DESC LIMIT 5
    )
    SELECT * FROM top_products;
    
  16. HAVING
    Фильтрация результатов агрегации.
    Пример:

    SELECT region, SUM(sales) FROM sales_data GROUP BY region HAVING SUM(sales) > 10000;
    
  17. COALESCE
    Возврат первого не NULL значения из списка.
    Пример:

    SELECT COALESCE(column1, column2, 'N/A') FROM table;
    
  18. NULLIF
    Возврат NULL, если значения равны.
    Пример:

    SELECT NULLIF(column1, 0) FROM table;
    
  19. CAST
    Преобразование типа данных.
    Пример:

    SELECT CAST(column1 AS FLOAT) FROM table;
    
  20. DISTINCT
    Удаление дубликатов.
    Пример:

    SELECT DISTINCT region FROM sales_data;
    

Эти операторы помогут вам подготовить данные для построения графиков в Metabase.

Источник: https://habr.com/ru/articles/885840/


Интересные статьи

Интересные статьи

Эффективность управления командировками зависит от множества факторов, включая использование подходящих инструментов и правильную организацию документооборота. Важно наладить этот процесс от разработк...
По ходу своей работы я давно сделал субъективное наблюдение о том, что чем меньше социальных связей сотрудник сформировал в своей рабочей группе, тем выше вероятность его увольнения, что согласуется ...
Это продолжение цикла статей про упрощение разработки адаптеров для RecyclerView. Часть 1В этой части рассмотрю следующие реализации потребностей отображения списков:·     &nb...
Часто от программистов PHP можно услышать: «О нет! Только не „Битрикс“!». Многие специалисты не хотят связываться фреймворком, считают его некрасивым и неудобным. Однако вакансий ...
Сравнивать CRM системы – дело неблагодарное. Очень уж сильно они отличаются в целях создания, реализации, в деталях.