Skip site navigation (1) Skip section navigation (2)

Re: [pgsql-de-allgemein] viele kleine queries vs wenige große queries

From: Michael Prochaska <michael(at)prochas(dot)net>
To: "A(dot) Kretschmer" <andreas(dot)kretschmer(at)schollglas(dot)com>
Cc: pgsql-de-allgemein(at)postgresql(dot)org
Subject: Re: [pgsql-de-allgemein] viele kleine queries vs wenige große queries
Date: 2008-03-17 15:53:18
Message-ID: 47DE93EE.7040307@prochas.net (view raw or flat)
Thread:
Lists: pgsql-de-allgemein
> Ich übersetz mal, Beispiel eine Rechnungs-Anwendung mit Rechnungskopf
> und Positionen: (ich hoffe, ich hab dich richtig verstanden)
>
>
> 1) 2 kurze 'select * from rechnung_kopf' und 'select * from
>    rechnung_position' und prüfe dann in der Anwendung, welche Positionen
>    zur Rechnung 4711 gehören
>
> 2) ein langes select 'select a.datum, a.adresse, b.position, b.artikel,
>    b.preis from rechnung_kopf a left join rechnung b on
>    a.nr=b.rechnung_nr where a.rechnung_nr = 4711;'
>
>
> Zur wahrscheinlich Deiner Verwunderung wird 2) nicht nur erheblich
> schneller ausgeführt (bei bassenden Indexen), sondern es ist auch der
> Aufwand zur Übertragung der Daten übers Netz deutlich geringer, Du hast
> weniger Arbeit in der Applikation und Du schonst die Platten des
> DB-Servers. Klingt lustig, ist aber so.
>
>
>
> Fall ich Dich falsch verstanden habe, sorry. Vielleicht schilderst Du
> mal besser, was Du planst.
>
> PS.: EXPLAIN kennst Du?
>
>   

ich habe alles was mit personen zu tun hat (personal, kunden,....) in 
subjekte (adresse, bankverbindung,....), personen (namen,...), 
firmen(bezeichnung), personal, kunden, usw aufgeteilt...weiters habe ich 
eine auftragstabelle und eine rechnungstabelle....dazwischen habe ich 
noch diverse zwischentabellen um kunden bzw. personal mit aufträgen zu 
verknüpfen.


wenn ich jetzt z.B.: alle daten für eine rechnung brauche, dann muss ich 
da ganz schön herumjoinen.

es gibt dann z.B: auch die möglichkeit das die rechnung an eine firma 
geht, es allerdings eine person als ansprechperson gibt.
wenn der rechnungsempfänger (die person) keine adressdaten hat, dann 
muss ich die adressdaten des rechnungsträgers (der firma) nehmen.


daher meine frage: vereinzelt infos holen um entscheidungen treffen zu 
können und dann dementsprechend nur daten holen die ich auch brauche, 
oder alles in einem riesigen join holen und dann nur das verwenden was 
ich brauche.


ich hoffe es ist jetzt klarer....

mfg,
michael

In response to

Responses

pgsql-de-allgemein by date

Next:From: Andreas KretschmerDate: 2008-03-17 19:26:46
Subject: Re: Re?==?iso-8859-1?Q?: [pgsql-de-allgemein] viele kleine queries vs wenig?==?iso-8859-1?Q?e große queries
Previous:From: Michael RennerDate: 2008-03-17 15:36:54
Subject: Re: [pgsql-de-allgemein] viele kleine queries vs wenige große queries

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group