Moin Moin!
Mahlzeit!
Mir liegt (in ACCESS) eine Tabelle vor, die hintereinander weg Messwerte beinhaltet:
nr probenr wert parameter
1 40 20,2 PARAM_1
2 40 0,15 PARAM_2
3 40 4,25 PARAM_3
4 50 18,9 PARAM_1
5 50 0,05 PARAM_2
6 50 6,15 PARAM_3Machen möchte ich (für einen Excelbericht) folgendes:
probenr wert_param_1 wert_param_2 wert_param_3
40 20,2 0,15 4,25
50 18,9 0,05 6,15also irgendwie ein halbes transponieren... Mache ich das mit JOIN, also erst mit SELECT über jeden Parameter und dann mit JOIN zusammen?
Ich sehe im Moment keinen sauberen Weg in SQL, nur Getrickse:
select
probennr,
max(wert_param_1),
max(wert_param_2),
max(wert_param_3)
from (
select
probennr,
wert as wert_param_1,
-99999 as wert_param_2,
-99999 as wert_param_3
from
tabelle
where
parameter='PARAM_1'
union
select
probennr,
-99999 as wert_param_1,
wert as wert_param_2,
-99999 as wert_param_3
from
tabelle
where
parameter='PARAM_2'
union
select
probennr,
-99999 as wert_param_1,
-99999 as wert_param_2,
wert as wert_param_3
from
tabelle
where
parameter='PARAM_3'
)
group by
probennr
(-99999 ist kleiner als alle möglichen Werte, ggf. anpassen.)
Alternative:
In Excel mit Makros oder Handarbeit die erste Form in die zweite bringen.
Alexander
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".