0

SSRS で一部のデータのピボットを解除しようとしていますが、必要な形式を取得するのに苦労しています。私の現在のテーブルとデータを以下に示します:-

CREATE TABLE [dbo].sampledata(
[DDMMMYY] [date] NULL,
[DayN] [nvarchar](4000) NULL,
[CArticle] [int] NULL,
[TU] [int] NULL,
[Pieces] [int] NULL,
[ActualSpace] [int] NULL,
[InternalCore] [int] NULL,
[QuarantinedStock] [int] NULL,
[AvailableSpace] [int] NULL
)


insert into sampledata (DDMMMYY, DayN, CArticle, TU, Pieces, ActualSpace, InternalCore, QuarantinedStock, AvailableSpace)
VALUES
('2019-09-13','Fri','848','20403','1249144','59790','17652','433','0'),
('2019-09-16','Mon','878','21328','1253811','63133','18908','429','0'),
('2019-09-17','Tue','892','21106','1253607','61770','18780','402','0'),
('2019-09-18','Wed','910','20948','1250381','61543','18485','955','0'),
('2019-09-19','Thu','863','20351','1243131','60235','18845','627','0'),
('2019-09-20','Fri','847','19923','1242594','59565','19460','1385','0'),
('2019-09-23','Mon','863','20862','1254736','62773','18362','1418','0'),
('2019-09-24','Tue','860','20592','1259028','62864','19972','1422','0'),
('2019-09-25','Wed','871','20646','1273306','63079','20498','1430','0'),
('2019-09-26','Thu','875','20424','1264449','61508','20040','1430','0'),
('2019-09-27','Fri','884','20581','1277418','62128','20287','1430','0'),
('2019-09-30','Mon','873','21684','1341305','66764','22666','1266','0');

31 日以上のデータを返すことはありません。

私がやりたいことは、データのピボットを解除することですが、日付に基づいてグループを維持することです。終了すると、データは次のようになります:-

例

日付をデータの上部に配置し、TU、Pieces などの見出しを左側に配置したいのですが、最初は unpivot を使用していましたが、複数の日があるため、データが右に伸びませんでした。日ごとに。

SSRS マトリックスを使用してみましたが、まだ目的の出力を得るのに苦労しています。

どんな助けでも大歓迎です。

4

1 に答える 1

0

データを UNPIVOT する方法は次のとおりです。

SELECT DDMMMYY, DayN, TypeCount, DataType
FROM #sampledata
UNPIVOT (TypeCount FOR DataType IN (CArticle
      ,TU
      ,Pieces
      ,ActualSpace
      ,InternalCore
      ,QuarantinedStock
      ,AvailableSpace )
      ) u 

個人的には、DayN フィールドを使用するのではなく、DATE フィールドを使用して、SSRS がその日 (月、火など) を把握できるようにします。

于 2019-10-07T18:59:14.620 に答える