guten morgen,
ich quäle mich mit pivots rum und komme leider nicht weiter -.-
ausgangssituation ist folgende:
zu diversen produkten gibt es viertelstundenpreise. das schema der preistabelle ist in etwa
[produkt_id], [handelstag], [wert1], [wert2], ..., [wert100]. (abhängig von der zeitumstellung hat ein tag zwischen 92 und 100 viertelstundenwerte).
was ich brauche ist folgendes:
[handelstag], [wert], [produktid_1], [produktid_2], ..., [produktid_n]
1.1.2016, 1, p1_wert1, p2_wert1, ..., pn_wert1
...
1.1.2016, 100, p1_wert100, p2_wert100, ..., pn_wert100,
2.1.2016, 1, p1_wert1, p2_wert1, ..., pn_wert1
...
2.1.2016, 100, p1_wert100, p2_wert100, ..., pn_wert100,
ich versuche mich langsam vorzuarbeiten an der query aber komm leider net voran, weil ich partout das aggregieren beim pivot nicht check... abhängig davon eben auch keine vorstellung davon, wie ich die einzelnen spalten mit aggregations-ausdrücken untereinanderbekomme für einen tag.
ich experimentier mit der abfrage rum, die lediglich eine preiskurve von einem produkt zurückgibt:
ich nehme jede hilfe dankend an
lg
kraeppy
ich quäle mich mit pivots rum und komme leider nicht weiter -.-
ausgangssituation ist folgende:
zu diversen produkten gibt es viertelstundenpreise. das schema der preistabelle ist in etwa
[produkt_id], [handelstag], [wert1], [wert2], ..., [wert100]. (abhängig von der zeitumstellung hat ein tag zwischen 92 und 100 viertelstundenwerte).
was ich brauche ist folgendes:
[handelstag], [wert], [produktid_1], [produktid_2], ..., [produktid_n]
1.1.2016, 1, p1_wert1, p2_wert1, ..., pn_wert1
...
1.1.2016, 100, p1_wert100, p2_wert100, ..., pn_wert100,
2.1.2016, 1, p1_wert1, p2_wert1, ..., pn_wert1
...
2.1.2016, 100, p1_wert100, p2_wert100, ..., pn_wert100,
ich versuche mich langsam vorzuarbeiten an der query aber komm leider net voran, weil ich partout das aggregieren beim pivot nicht check... abhängig davon eben auch keine vorstellung davon, wie ich die einzelnen spalten mit aggregations-ausdrücken untereinanderbekomme für einen tag.
ich experimentier mit der abfrage rum, die lediglich eine preiskurve von einem produkt zurückgibt:
Code:
select piv.[Energy Meteo Sueloglu Dayahead], piv.trading_day from
(
select top 1 pr.product_name, pr.product_id, p.trading_day, p.[val_1], p.[val_2] ,p.[val_3] ,p.[val_4]
from ZEMDA.dbo.tbl_product pr
inner join ZEMDA.dbo.tbl_price p on pr.product_id = p.product_id
where pr.exchange_id = 30000
and val_1 > 0
) src
pivot
(
avg(val_1)
for product_name in (
[Energy Meteo Sueloglu Dayahead]
)
) piv
order by trading_day
ich nehme jede hilfe dankend an
lg
kraeppy