开发者社区> 问答> 正文

加入三个表,获取每个代理的销售总额

加入三个表,获取每个代理的销售总额

展开
收起
贺贺_ 2019-12-03 17:35:30 396 0
1 条回答
写回答
取消 提交回答
  • 使用 UNION ALL 返回所有代理(主要代理和额外代理)及其相应的销售:

    SELECT SUM(t.volume) as SalesVolume, t.AgentName 
    FROM (
      SELECT AgentID, AgentNames AS AgentName, 
        SaleValue / CASE WHEN COALESCE(ExtraAgentID, 0) <> 0 THEN 2 ELSE 1 END volume
      FROM [dbo].[PrimeClosureInformation]
      UNION ALL
      SELECT ExtraAgentID, ExtraAgentName, SaleValue / 2
      FROM [dbo].[PrimeClosureInformation]
      WHERE COALESCE(ExtraAgentID, 0) <> 0
    ) AS t INNER JOIN VW_User AS u
    ON u.UserIdLG = t.AgentId 
    WHERE u.Status = N'active'
    GROUP BY t.AgentName
    
    2019-12-03 17:36:10
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载