【问题标题】:Two sub query with one common column具有一个公共列的两个子查询
【发布时间】:2016-01-21 09:28:15
【问题描述】:

我把原来的问题改得更具体了。

在运行此查询后,我有两个想要作为输出的参数。 这两个参数需要不同的标准。

为此,我构建了这种查询:

SELECT m.count, ytd.count 
FROM ( 
   SELECT COUNT( id ) count 
   FROM table 
   WHERE date BETWEEN BETWEEN '2010-06-01' AND '2010-06-30'
) m, (SELECT COUNT( id )count 
      FROM table 
      WHERE date BETWEEN BETWEEN '2010-01-01' AND '2010-06-30'
) ytd 

这种查询返回计数并且运行良好。 但现在我想深入挖掘并通过 dep 查看这两个参数。

现在我得到了总数:

Param1  Param2
  39      85

我希望得到这张桌子:

Dep Param1 Param2
  1    5      7
  2    34     78

等等..

希望现在更清楚了。

谢谢!

【问题讨论】:

  • 添加一些示例表数据和预期结果,帮助您会容易得多!
  • 您仍然可以添加一些样本数据行,并手动创建预期的结果。
  • 如何在此处添加表格?很抱歉没有一轮:\
  • 在适当的列中写入数据,标记行并按下{ }按钮。
  • 首先尝试修改您的问题并添加您的表结构,或者用于创建表的查询

标签: sql select sql-server-2012


【解决方案1】:
    SELECT m.dep, m.count, ytd.count 
    FROM ( 
          SELECT COUNT( id ) count, Dep 
          FROM table 
          WHERE date BETWEEN BETWEEN '2010-06-01' AND '2010-06-30'
          group by dep
    ) m, 

Join

(   SELECT COUNT( id )count, dep 
          FROM table 
          WHERE date BETWEEN BETWEEN '2010-01-01' AND '2010-06-30'
          group by dep
    ) ytd

ON ytb.dep=m.dep

感谢您的帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-18
    • 2012-06-10
    • 1970-01-01
    • 1970-01-01
    • 2014-03-26
    • 2020-08-04
    • 2014-09-03
    相关资源
    最近更新 更多