Hallo,<BR><BR>
warum habe ich mit eingeschränkter Selektion sooooo <B>lange Wartezeiten</B>.<BR><BR>
<PRE>
CREATE VIEW "VW_TEST" (
"ID",
"SMID",
"KDID",
"TYP",
"STDATE",
"ENDATE",
"STRST",
"RST",
"STBST",
"BST",
"STPTY",
"PTY",
"STPKA",
"PKA",
"STZRT",
"ZRT",
"STODON",
"DEL"
) AS
SELECT
"ID",
"SMID",
"KDID",
"TYP",
"STDATE",
"ENDATE",
"STRST",
S1."LONG" AS RST,
"STBST",
S2."LONG" AS BST,
"STPTY",
S3."LONG" AS PTY,
"STPKA",
S4."LONG" AS PKA,
"STZRT",
S5."LONG" AS ZRT,
"STODON",
"DEL"
FROM TEST
INNER JOIN STCOD S1 ON ((TEST.STRST = S1.REFE) AND (S1.TYPE='RST'))
INNER JOIN STCOD S2 ON ((TEST.STBST = S2.REFE) AND (S2.TYPE='BST'))
INNER JOIN STCOD S3 ON ((TEST.STPTY = S3.REFE) AND (S3.TYPE='PTY'))
INNER JOIN STCOD S4 ON ((TEST.STPKA = S4.REFE) AND (S4.TYPE='PKA'))
INNER JOIN STCOD S5 ON ((TEST.STZRT = S5.REFE) AND (S5.TYPE='ZRT'))
</PRE>
<BR><BR>
Ausführung in <B>Konsole</B>:<BR><BR>
- <B>Variante 1</B>: SELECT * FROM VW_TEST;
(* liefert Daten <B>sofort 151 Sätze</B> *)<BR><BR>
- <B>Variante 2</B>: SELECT * FROM VW_TEST WHERE ((STDATE<='<B>06.10.2004</B>') AND (ENDATE>=<B>06.10.2004</B>'));
(* liefert erst nach ca <B>15sec. 1 Satz</B> *)<BR><BR>
Gibt es eine Möglichkeit die Abfrage zu optimieren ?<BR><BR>
MfG<BR>
Adi
warum habe ich mit eingeschränkter Selektion sooooo <B>lange Wartezeiten</B>.<BR><BR>
<PRE>
CREATE VIEW "VW_TEST" (
"ID",
"SMID",
"KDID",
"TYP",
"STDATE",
"ENDATE",
"STRST",
"RST",
"STBST",
"BST",
"STPTY",
"PTY",
"STPKA",
"PKA",
"STZRT",
"ZRT",
"STODON",
"DEL"
) AS
SELECT
"ID",
"SMID",
"KDID",
"TYP",
"STDATE",
"ENDATE",
"STRST",
S1."LONG" AS RST,
"STBST",
S2."LONG" AS BST,
"STPTY",
S3."LONG" AS PTY,
"STPKA",
S4."LONG" AS PKA,
"STZRT",
S5."LONG" AS ZRT,
"STODON",
"DEL"
FROM TEST
INNER JOIN STCOD S1 ON ((TEST.STRST = S1.REFE) AND (S1.TYPE='RST'))
INNER JOIN STCOD S2 ON ((TEST.STBST = S2.REFE) AND (S2.TYPE='BST'))
INNER JOIN STCOD S3 ON ((TEST.STPTY = S3.REFE) AND (S3.TYPE='PTY'))
INNER JOIN STCOD S4 ON ((TEST.STPKA = S4.REFE) AND (S4.TYPE='PKA'))
INNER JOIN STCOD S5 ON ((TEST.STZRT = S5.REFE) AND (S5.TYPE='ZRT'))
</PRE>
<BR><BR>
Ausführung in <B>Konsole</B>:<BR><BR>
- <B>Variante 1</B>: SELECT * FROM VW_TEST;
(* liefert Daten <B>sofort 151 Sätze</B> *)<BR><BR>
- <B>Variante 2</B>: SELECT * FROM VW_TEST WHERE ((STDATE<='<B>06.10.2004</B>') AND (ENDATE>=<B>06.10.2004</B>'));
(* liefert erst nach ca <B>15sec. 1 Satz</B> *)<BR><BR>
Gibt es eine Möglichkeit die Abfrage zu optimieren ?<BR><BR>
MfG<BR>
Adi
Comment