AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Query mit UNION geht nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Query mit UNION geht nicht

Ein Thema von Baeuerle · begonnen am 2. Feb 2006 · letzter Beitrag vom 2. Feb 2006
Antwort Antwort
Baeuerle

Registriert seit: 17. Mär 2005
Ort: Ettenheim
283 Beiträge
 
Delphi 2005 Professional
 
#1

Query mit UNION geht nicht

  Alt 2. Feb 2006, 12:56
Datenbank: Paradox • Version: 7 • Zugriff über: Query
Hallo zusammen,

Warum funktioniert "UNION" nicht ? Es kommt immer ungültiges Schlüsselwort UNION als Fehler!!!


Delphi-Quellcode:
with tq.SQL do
 begin
 Clear;
 Text:='SELECT * FROM '+#39+tab_1+#39' AS SRC LEFT JOIN'+
        #39+tab_2+#39+' AS DST'#10+
        'ON (SRC.ID=DST.ID)'+#10+
        'ORDER BY Name'+#10+
        'UNION'+#10+
        'SELECT * FROM '+#39+tab_1+#39' AS SRC RIGHT JOIN'+
        #39+tab_2+#39+' AS DST'#10+
        'ON (SRC.ID<>DST.ID)'+#10+
        'ORDER BY Name';
 end;
tq.Open;

Danke
  Mit Zitat antworten Zitat
Horst_59

Registriert seit: 24. Okt 2005
Ort: NMS
6 Beiträge
 
#2

Re: Query mit UNION geht nicht

  Alt 2. Feb 2006, 14:00
Hallo,

die ORDER BY-Klausel solltest du erst nach dem UNION anwenden. Dann dürfte das Statement syntaktisch korrekt sein.

Gruß
Sebastian
Sebastian
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Query mit UNION geht nicht

  Alt 2. Feb 2006, 14:36
Hallo Baeuerle,

wie Horst_59 schon schreibt nur am Ende ein ORDER BY.
Wenn du mehrere Tabellen über UNION verbindest erhälst du doch auch nur eine Tabelle und deshalb wird auch nur ein ORDER BY benötigt.

Delphi-Quellcode:
with tq.SQL do begin
  Clear;
  Text:=
    'SELECT *'#13 +
    ' FROM tab_1 AS SRC'#13 +
    ' LEFT JOIN tab_2 AS DST'#13 +
    ' ON SRC.ID = DST.ID'#13 +
    'UNION'#13 +
    'SELECT *'#13 +
    ' FROM tab_1 AS SRC'#13 +
    ' RIGHT JOIN tab_2 AS DST'#13 +
    ' ON SRC.ID <> DST.ID'#13 +
    'ORDER BY Name';
end;
tq.Open;
MfG
Thorsten
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:03 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