我很难找到一个好的陈述来写。当我查询特定的“公司”时,我能够实现我想要的,但我想获取数据库中所有公司的值。
基本上我有 3 个表:用户、公司、Plans_ExchangeMailbox。我需要做的是查询每家公司正在使用多少计划。计划在用户表中的用户级别分配。
这是我的表格布局:
用户
显示名称
CompanyCode(这是 Companies 表中 CompanyCode 的 ID)
MailboxPlan(这是 Plans_ExchangeMailbox 表中的 ID)
公司
公司名称
公司代码
计划_ExchangeMailbox
邮箱计划名称
邮箱计划ID
这是我要生成的格式:CompanyName、MailboxPlanName、Count(这是公司的 MailboxPlanID 数量)
我能够让这个工作,但问题是它一次只能做一家公司并且它没有获得公司名称:
SELECT
Plans_ExchangeMailbox.MailboxPlanName,
SUM(CASE WHEN Users.MailboxPlan = Plans_ExchangeMailbox.MailboxPlanId THEN 1 ELSE 0 END) AS PlanCount
FROM
Plans_ExchangeMailbox, Users
WHERE
Users.CompanyCode='CC0'
GROUP BY
Plans_ExchangeMailbox.MailboxPlanName
最终格式应该如何:
标题:CompanyName、PlanName、Count
价值观:
微软,青铜计划,5
微软,黄金计划,20
戴尔,青铜计划,3
戴尔,白银计划,80
ETC.....