0

ピボットテーブルを使用したクエリがあります。

SELECT * 
   FROM (SELECT ID, ID,Date FROM Table1) AS P 
PIVOT 
    (   
      COUNT (P.ID)
      FOR P.Date in ([08/17/2006],[08/18/2006])  -- [MM/DD/YYYY] - Format
    ) as pvt

上記のクエリでP.Datedatetime2(7)、そうです、私は次のようなデータを取得しています、

P.Date = '2006-08-17 15:30:23.0000000' 

しかし、私はと比較してい'2006-08-17'ます。ここでは、結果が得られていなくても、日付の部分は同じです。

私の目的は、日付が一致したときにIDのカウントを表示することです。

で試しましたが、ブロック内のテーブルでConvert()は許可されていません。PIVOTFOR

4

1 に答える 1

2

あなたCAST()は内側の選択で行う必要があります:

SELECT *
FROM 
(
  SELECT ID, ID, Cast(yourDateValue as Date) newdate  -- perform the conversion here
  FROM Table1 
) AS P 
PIVOT 
(   
  COUNT (P.ID)
  FOR newdate in ([08/17/2006], [08/18/2006])  -- [MM/DD/YYYY] - Format
) as pvt
于 2012-09-13T10:48:08.437 に答える