【发布时间】:2021-02-09 04:49:48
【问题描述】:
我正在处理元数据库中的 SQL 数据库查询。我有两个单独的查询,我希望将它们输出为两个单独的列,按名称排序。执行联合后,它似乎将所有值放入一列中,重复名称。实现两列输出(每个查询一个)的最佳方法是什么?
SELECT "source"."name" AS "name", "source"."count" AS "count"
FROM (SELECT "source"."count" AS "count", "source"."name" AS "name", "source"."count" AS "count_2", ("source"."count" * 1.5) AS "a" FROM (SELECT "marketing_campaign__via__campa"."name" AS "name", count(*) AS "count" FROM "public"."event_event"
LEFT JOIN "public"."event_event" "Event Event - Source Event" ON "public"."event_event"."source_event_id" = "Event Event - Source Event"."id" LEFT JOIN "public"."marketing_campaign" "marketing_campaign__via__campa" ON "public"."event_event"."campaign_id" = "marketing_campaign__via__campa"."id"
WHERE "public"."event_event"."status" = 'Queued'
GROUP BY "marketing_campaign__via__campa"."name"
ORDER BY "marketing_campaign__via__campa"."name" ASC) "source") "source"
union all
SELECT marketing_campaign.name,
cast(sum((event_event.status='Opt-in')::int) as decimal) / nullif(sum((event_event.status='Sent')::int), 0)* 100 as "Opt-in Rate (Sent)"
FROM event_event
JOIN marketing_campaign ON event_event.campaign_id = marketing_campaign.id
WHERE marketing_campaign.is_archived=false [[AND {{date_created}}]]
GROUP BY marketing_campaign.name
LIMIT 1048576
【问题讨论】:
-
Unclear... 显示一个示例 - 单独的查询输出(2-3 行)、获得的和期望的输出。
标签: mysql sql postgresql metabase