のMicrosoft SQL 2008R2SQLピボット複数は(15)の値は、
私は複数の値を持つすべてのピボット・ポスト、ピボットを検討しようとしているだけで4列に戻ったが、何も私は必要なものであるように思わない - これは最も近いかもしれDisplaying multiple values into columns in sql server using pivot - しかし、悲しいことに "結果"がないので、私は確信が持てません。
私の質問私は、私は2つのテーブル
GALFP 16421行、かなり静的な新しい部屋を作成(または人口)を取得しますように照会していますより多くの値が追加されたデータベースを持ってい
- 現在Iここでは15行にしか興味がありません(下のグレーでさらにご覧ください)。しかし、4値のリターンを言っています - 私は4に基づいて報告し、それらが選択されているため4つのクエリが値を気に入って持ってたくさんに
PointID int NULL
DataTime datetime NULL
DataValue float NULL
DataValueType tinyint NULL
DataValueStatus tinyint NULL
で構成されて15分毎に成長
siteLabel nvarchar 255
siteConnectionString nvarchar 255
LanNo smallint NULL
NodeAddress smallint NULL
LanLabel nvarchar 255
OSLabel nvarchar 255
PointLabel nvarchar 255
item nvarchar 255
pointID int NULL
PV 23496777行、合計15の組み合わせ。
ので、ここでのクエリの1つの
SELECT GALFP.PointLabel, PV,DataTime, ROUND(PV,DataValue, 2) AS MinTemp **/* See note about the 4 values */**
FROM PL INNER JOIN GALFP ON PV,PointID = GALFP.pointID
WHERE convert(VARCHAR(10), PV.DataTime,110) like '03%2017' AND
(GALFP.PointLabel LIKE N'%Data Hall%Min Temp (15 minute)%') **/* See note about variants */**
値です:第一のタイプはMinTemp(示すように)で、第二はMaxTemp、第三AvgTemp、第四RelHumidity
そうではなく、4つのクエリを実行しているが、コピー&ペースト - ラベル、日付/時刻、最小値、最大値、平均値、RelHum - (可能であれば)単一のクエリで報告したいもの
Simples私はあなたの言うことを聞いているのですか?ただし、データとクエリが悪くなる - あなたはWHERE句が
バリアントに等を有していることがわかります。だから私は15個の値に旋回した場合、現在の15の可能な値はそう
ALL Room 4 Hum Ave (15 minute)
Room 1 Min Temp (15 minute)
Room 2 Min Temp (15 minute)
Room 3 Min Temp (15 minute)
Room 5 Min Temp (15 minute)
Room 1 Max Temp (15 minute)
Room 2 Max Temp (15 minute)
Room 3 Max Temp (15 minute)
Room 5 Max Temp (15 minute)
Room 1 Hum Ave (15 minute)
Room 2 Hum Ave (15 minute)
Room 3 Hum Ave (15 minute)
Room 4 Hum Ave (15 minute)
Room 5 Hum Ave (15 minute)
Room 6 Hum Ave (15 minute)
です、私は必要なものではない15の列を取得します。私はどの部屋が関係しているかにかかわらず、1つの列にすべてのMin、別のMaxで別のもの、別のもので平均と別の湿度を持つことができる必要があります。私はそのデータからそれを排除することはできません。
はい、私はそれは、そのない私のデザインより良い正規化されている可能性が:(
任意のアイデアは?事前にありがとうございます知っている!