AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL abfrage aber wie?

SQL abfrage aber wie?

Offene Frage von "Tau"
Ein Thema von Tau · begonnen am 2. Jun 2005 · letzter Beitrag vom 3. Jun 2005
Antwort Antwort
Seite 2 von 2     12
jensw_2000
(Gast)

n/a Beiträge
 
#11

Re: SQL abfrage aber wie?

  Alt 3. Jun 2005, 07:45
Das Ergebnis ist das gleich, aber
SQL-Code:
SELECT TB020.000 AS TB025F012,
         TB020.013 AS TB020F013,
         TB020.014 AS TB020F014
FROM TB020
WHERE TB020.000
         IN
         (
         SELECT DISTINCT TB025.F012
         FROM TB025
         )
sollte IMHO etwas schneller und Server schonender sein, weil das äussere SELECT aus einer bereits passend verkleinerten Datenmenge auswählt.
Stattdessen wird bei der INNER JOIN Variante erst alles zusammemgesammelt und dannach ein Großteil der Daten durch das DISTINCT verworfen.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#12

Re: SQL abfrage aber wie?

  Alt 3. Jun 2005, 10:46
Zitat von Tau:
Gibt es nicht irgend wie eine Möglichkeit mit einer unter abfrage oder so?

z.B.( Select TB025.F012 From TB025 Group By TB025.F012 )
und dann darüber einen Select mit Left outer Join auf die Tabelle TB020 zu legen.
Doch, damit wärst du auf dem richtigen Weg.
Beispiel:
SQL-Code:
SELECT DevTbl.*, TB020.FeldA, TB020.FeldB
FROM
(Select TB025.F012, COUNT(*) AS Anzahl From TB025 Group By TB025.F012) DevTbl
LEFT OUTER JOIN TB020 ON DevTbl.F012=TB020.F012
Erklärung:
Zuerst wird der Unterselect zusammen mit dem GROUP BY ausgeführt.
Dieser Unterselekt erhält den Aliasnamen DevTbl.
Dabei werden die Anzahl der Datensätze schon mal stark reduziert. (Gut für Performance!!)
Danach wird ein JOIN auf eine weitere Tabelle ausgeführt.
Andreas
  Mit Zitat antworten Zitat
Tau

Registriert seit: 17. Mär 2003
Ort: Bludenz
221 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: SQL abfrage aber wie?

  Alt 3. Jun 2005, 22:43
Hallo zusammen

jens: danke für den Tipp


shmia: werde das ganze gleich ausprobieren.

Ist immer wieder interessant zu sehen was für kluge Köpfe in diesem Forum herumgeistern.

Ich finde dieses Forum einfach nur G...l.

D A N K E

schöne Grüsse
Tau
http://www.quad-offroad.com
wer kämpft kann verlieren aber wer nicht kämpft hat verloren
( Delphi 7 )
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz