несколько агрегатов, каждый с уникальными фильтрами - PullRequest
0 голосов
/ 17 октября 2019

Похоже на простую проблему, но я пробовал UNION, CASE и LEFT JOIN безрезультатно.

Customers_tbl с полями total_orders, account_creation и last_order_date

Я хочу, чтобы результирующий запрос далсообщить следующее:*

критерий фильтра для new_customer_count для каждого месяца: total_orders> = 5, а account_creation падает в указанном месяце

Я использую программу построения графиков (Metabase) и хочу видеть две диаграммы тренда на одном экране. Я могу наметить один из двух, но не оба. Думая, что решение заключается в создании псевдонимов на customer_tbl, но они пока что ошиблись.

Спасибо за помощь. Чак

SELECT 
    strftime("%Y-%m",new_cust.account_creation) AS "last_ordr", 
    COUNT(lost_cust.last_ordr_date) AS "lost_cust_count",
    COUNT(new_cust.account_creation) AS "new_cust_count"
FROM "customers_tbl" "lost_cust", "customers_tbl" "new_cust"

LEFT JOIN lost_cust ON lost_cust.last_ordr_date = customers_tbl.last_ordr_date AND date(lost_cust.last_ordr_date) <= date('now','localtime','-1 months')
LEFT JOIN new_cust ON  new_cust.account_creation = customers_tbl.account_creation 


WHERE customers_tbl.account_creation >= date('now','localtime','-2 year')  
GROUP by last_ordr 
ORDER BY last_ordr ASC 
limit 2000
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...