[57878] in SAPr3-news

home help back first fref pref prev next nref lref last post

Re: "order by" beim "select" in ein sorted table

daemon@ATHENA.MIT.EDU (gs_dev0@nexgo.de)
Thu Aug 17 03:11:36 2006

To: sapr3-news@mit.edu
Date: 17 Aug 2006 00:11:21 -0700
From: gs_dev0@nexgo.de
Message-ID: <1155798681.576012.282520@75g2000cwc.googlegroups.com>


Ralf Wenzel schrieb:
> Behauptung: Es bringt etwas, wenn man bei einem select in eine
> sortierte Tabelle (type sorted table) einen "order by primary key"
> mitgibt.
>
> Gegenbehauptung: Wenn es =FCberhaupt was bringt, dann nur Zeitverluste.
>
> Was davon stimmt und warum?
Hallo Ralf,
ich denke es kommt darauf an, wie die interne Tabelle sortiert werden
soll.
Wahrscheinlich spielt auch die Anzahl der zu lesenden Datens=E4tze eine
Rolle.
Mit einem kleinen Testprogramm habe ich mal verschiedene F=E4lle
durchprobiert.
Wenn die interne Tabelle nach den Schl=FCsselfeldern der DB-Tabelle
sortiert ist
scheint der Zusatz "order by" tats=E4chlich einen Zeitgewinn zu bringen
(s.u.):

Lesen der Tabelle MARC (Schl=FCsselfelder matnr und werks) in eine
interne Tabelle mit folgendem Aufbau:

        matnr TYPE marc-matnr
        werks TYPE marc-werks
        ekgrp TYPE marc-ekgrp
        mmsta TYPE marc-mmsta

Schl=FCsselfelder der internen Tabelle und entsprechender Zusatz
"select...order by" matnr, werks
100 Durchl=E4ufe
Laufzeit OHNE select...order
Durch.Laufzeit:    829.573
Laufzeit MIT select...order
Durch.Laufzeit:    661.169
----------------------------
Schl=FCsselfelder der internen Tabelle und entsprechender Zusatz
"select...order by" matnr, werks, ekgrp
100 Durchl=E4ufe
Laufzeit OHNE select...order
Durch.Laufzeit:    826.144
Laufzeit MIT select...order
Durch.Laufzeit:  1.249.842
----------------------------
Schl=FCsselfelder der internen Tabelle und entsprechender Zusatz
"select...order by" werks, matnr
100 Durchl=E4ufe
Laufzeit OHNE select...order
Durch.Laufzeit:    869.024
Laufzeit MIT select...order=20
Durch.Laufzeit:  1.382.109 =20

Gru=DF
Georg


home help back first fref pref prev next nref lref last post