Hallo Leude,
ich habe mal wieder eine Frage zur Erstellung einer DB-Abrage. Ich bin alles andere als fit beim Formulieren von SQL-Statements. Daher formuliere ich mein Anliegen einmal hier. Folgende Struktur:
Code:
Tabelle: RQS
rqsSk
EMP_SK
STATUS
EFF_CRE_TS
Tabelle: RQSDate
rqsSk
rqsDateSk
NOM_DATE
EMP_SK
STATUS_NOM
Tablle: RQSDet
rqsDetSk
rqsDateSk
ACTN
SEG_CODE_SK
Die Tabellen stehen wie folgt in Beziehung:
Code:
rqs <= 1:n => rqsDate <= 1:1 => rqsDet
Ich habe bisher folgendes:
Code:
select
rqs.rqsSk,
rqs.empSk,
rqs.status,
rqs.effCreTs,
rqsdates.nomDate,
rqsdets.actn,
rqsdets.segCodeSk,
count(rqs)
from
Rqs rqs inner join rqs.rqsDates rqsdates
inner join rqsdates.rqsDets rqsdets
group by
rqs.rqsSk,
rqs.empSk,
rqs.status,
rqs.effCreTs,
rqsdates.nomDate,
rqsdets.actn,
rqsdets.segCodeSk
having
(rqs.empSk = '-979999242803'
and
rqsdets.actn = 'ADD'
and
rqsdets.segCodeSk ='-979998246801')
order by
rqs.effCreTs desc
Das Ergebnis liefert mehrere Zeilen, wo rqs.EFF_CRE_TS jeweils identich sind:
Code:
RQS_SK EMP_SK STATUS EFF_CRE_TS NOM_DATE ACTN SEG_CODE_SK Tage
-979913683924 -979999242803 FAIL 01.08.2006 14:41:14 38959 ADD -979998246801 1
-979913684171 -979999242803 FAIL 01.08.2006 14:36:40 38959 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38959 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38960 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38961 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38962 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38963 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38964 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38965 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38966 ADD -979998246801 1
-979913685879 -979999242803 FAIL 01.08.2006 13:29:35 38967 ADD -979998246801 1
-979913714646 -979999242803 FAIL 31.07.2006 11:47:51 38958 ADD -979998246801 1
Ich möchte nun statt mehrfachen Zeilen EFF_CRE_TS die Zeilen zählen und als Tage ausgeben. Als Beispiel:
Für EFF_Cre_TS = 01.08.2006 13:29:35 sollte bei Tagen ein 9 erscheinen. Das kann doch nicht so schwer sein? Wie muss das gruppiert werden? Wie sieht das "count()" aus?
Ich stecke fest! Kann mir jemand helfen? Vielen Dank!