【问题标题】:Working with dates in tsql query在 sql 查询中处理日期
【发布时间】:2016-03-18 05:48:40
【问题描述】:

我想创建一个报告,按月为我提供总销售额

select customer,month(dated), sum(invtotal)
from salestable
group by customer,dated

给我我的结果,但如果客户在特定月份有三个订单,我会返回多行。

我希望 month(dated) 去掉日期的 day 部分,只返回整个特定月份的所有内容,但它似乎没有这样做。

关于我做错了什么有什么想法吗?

【问题讨论】:

  • 你应该GROUP BY customer, MONTH(dated)。如果您的数据跨越多年,也可以添加日期年份。

标签: sql sql-server tsql date select


【解决方案1】:
select    customer, month(dated), sum(invtotal)
  from salestable
 group by customer, month(dated)

【讨论】:

  • 我的问题是,如果我有几行都在 12 月内过时,我仍然会返回这些行,而我想要一个月的总数...我希望通过使用月份(日期)它会给我 11 月、12 月和 1 月的三行数据,但我仍然得到与实际数据相同的行数....
  • 真的吗?我认为您没有使用我发布的答案。
  • 您的查询太长了?这是您作为问题发布的简短查询的答案。我上面的答案中的查询是否有效?
  • 您的查询完美运行 - 谢谢。但我只发布了我的 sql 查询的摘要,而我的实际查询中的某些内容仍然给我一个问题 - 我认为它是到月份(日期) - 我怎样才能在此处发布我的完整查询以便你可以看到它?
  • SO 不是免费的编码服务。您发布了问题查询并得到了修复。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-30
  • 1970-01-01
  • 1970-01-01
  • 2013-10-19
  • 1970-01-01
相关资源
最近更新 更多