SQL 2 Table Question

Hier dreht es sich um den PostGre Server

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

SQL 2 Table Question

Beitrag von AUGE_OHR »

hi,

ich kann doch 2 Table in einem SELECT nutzen wenn ich "A(lia)S" verwende

Code: Alles auswählen

"SELECT a.text1,b.__text1 FROM sqldata AS a, sqlindex AS b"
bei gleicher Anzahl von ROW(s) müsste es Synchron laufen :idea:

---

wenn ich nun PgDBE nutze mit "Index" auf "text1" dann sucht er doch nach "__text1"

Frage : wäre der "A(lia)S" dabei "egal" :?:
gruss by OHR
Jimmy
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2823
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 95 Mal
Danksagung erhalten: 13 Mal

Re: SQL 2 Table Question

Beitrag von georg »

Hallo, Jimmy -


wenn Du zwei Tabellen, die einen "synchronen" Schlüssel haben, parallel einlesen willst, dann würde ich eher auf einen LEFT JOIN zugreifen.

Und sofern die Felder unterschiedlich benannt sind, braucht es auch keinen Alias.

Code: Alles auswählen

SELECT * FROM tablea LEFT JOIN tableb ON feldausA = feldausB
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 851
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 192 Mal
Kontaktdaten:

Re: SQL 2 Table Question

Beitrag von Marcus Herz »

Wenn du keine Bedingung zwischen den 2 Tabellen definierts, bekommst du ein karthesisches Ergebnis, jeder Satz von Tabelle a wird mit JEDEM Satz von Tabelle b verknüpft, also irre viele Sätze


PS; da heben sich 2 Antworten überschnitten
Gruß Marcus

Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Benutzeravatar
Marcus Herz
1000 working lines a day
1000 working lines a day
Beiträge: 851
Registriert: Mo, 16. Jan 2006 8:13
Wohnort: Allgäu
Hat sich bedankt: 39 Mal
Danksagung erhalten: 192 Mal
Kontaktdaten:

Re: SQL 2 Table Question

Beitrag von Marcus Herz »

du meinst wohl:

Code: Alles auswählen

"SELECT a.text1,b.__text1 FROM sqldata AS a, sqlindex AS b where a.text1 = b.__text1"
Gruß Marcus

Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: SQL 2 Table Question

Beitrag von AUGE_OHR »

hi,

Danke für eure Antworten.

ich habe in beiden Table ein "internes" FIELD __Record eingefügt was ich nutzen kann

Code: Alles auswählen

"SELECT a.text1,b.__text1 FROM sqldata AS a, sqlindex AS b where a.text1 = b.__text1"
wird dann zu

Code: Alles auswählen

"SELECT a.text1,a__Record,b.__text1,b.__Record FROM sqldata AS a, sqlindex AS b where a.__Record = b.__Record"
die Grund Idee ist den "Overhead" in der "Data" Table, durch PgDBE, in eine "CDX" Table zu verlagern.
b.__text1 soll ala PgDBE den IndexKey aufnehmen.
gruss by OHR
Jimmy
Antworten