sql语句:按日期范围计算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql语句:按日期范围计算相关的知识,希望对你有一定的参考价值。

说我有一张桌子

license_num (varchar)--------checkout_datetime (datetime)

ABC-123 -------------------------------------------- 2017-12 -29 00:07:00

ABC-123 ------------------------------------------- 2017-12- 30 00:10:00

XYZ-456 ------------------------------------------- 2017-12- 30 00:10:00

XYZ-456 ------------------------------------------- 2017-12- 31 00:11:00

我需要一个产生以下结果的SQL语句:

LicenseNumber--------12/29---12/30---12/31---TotalOfWeek

ABC-123 ----------------------------------- 1 ----------- --1 ------------- 0 ------------------ 2

XYZ-456 ----------------------------------- 0 ----------- --- ------------ 1 1 ------------------ 2

我该如何编写这样的SQL语句?

感谢帮助!

答案

试试这个.. :)我说得对...

   SELECT *,CONVERT(Varchar(10),
  (DATEPART(MM,checkout_datetime)))+'/'+CONVERT(Varchar(10),
  (DATEPART(DD,checkout_datetime)))  AS NewColName,1 AS Count
  INTO #TempPivotTab2
  FROM TransTable

  SELECT *
  FROM
   (
   SELECT license_num,NewColName,Count
   FROM   #TempPivotTab2 
   ) AS SourceTable
   PIVOT
   (
   SUM(Count)
   FOR NewColName IN ([12/29],[12/30],[12/31])
   )Piv

以上是关于sql语句:按日期范围计算的主要内容,如果未能解决你的问题,请参考以下文章