Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL...UNION mit unterschiedlichen Tabellen (Struktur) (https://www.delphipraxis.net/174932-sql-union-mit-unterschiedlichen-tabellen-struktur.html)

haentschman 19. Mai 2013 10:13

Datenbank: Firebird • Version: 2.5 • Zugriff über: IBDAC

SQL...UNION mit unterschiedlichen Tabellen (Struktur)
 
Guten Morgen... 8-)

Ziel:
gemeinsame Datenmenge mit Feld AA,BB,CC,DD aus 2 Tabellen

Tabelle1:
Feld AA,BB,CC,DD

Tabelle2:
Feld XX,ZZ,AA,FF,CC...

Bedeutet:
Tabelle 1 kann 1:1 übernommen werden (ausgewählte Datensätze).
Ich benötige aus der 2. Tabelle nur diverse Teildaten (Felder) und muß die nicht vorhandenen mit Defaultwerten füllen. Das Ergebnis des SELECT muß aber die Tabelle 1 Struktur ergeben, damit die ggf. mit UNION "zusammengesetzt" werden können.

Wie war das nochmal mit den Defaultwerten bei SQL? Oder ist clientseitiges Zusammensetzen besser?
Stichworte reichen mir... 8-)

Danke, und schöne Pfingsten. :)

mkinzler 19. Mai 2013 10:23

AW: SQL...UNION mit unterschiedlichen Tabellen (Struktur)
 
Defaultwerte werden hier nicht helfen, da diese nur beim insert gelten. In deinem Fall mustt du diese in der Abfrage einfügen
SQL-Code:
select ..., <Wert> as <Spalte> ... from ...

DeddyH 19. Mai 2013 10:24

AW: SQL...UNION mit unterschiedlichen Tabellen (Struktur)
 
Nimm doch einfach Konstanten.
SQL-Code:
SELECT
  IntField, StringField, FloatField
FROM
  Tabelle1
UNION
SELECT
  0, 'Hallo Welt', FloatField
FROM
  Tabelle2

haentschman 19. Mai 2013 10:32

AW: SQL...UNION mit unterschiedlichen Tabellen (Struktur)
 
Ha... danke :thumb:

Stümmt. Das Select auf die erste Tabelle gibt ja die Spalten vor. Bei der 2. Tabelle sind die ja egal. Das war mein Gedankenknoten 8-)

Nachtrag:
Code:
SELECT
  0, 'Hallo Welt', FloatField
...jetzt müßte ich die 0 abhängig von einem Feldwert dieser Tabelle machen... vorhanden(gefüllt) 1, nicht vorhanden(Leerstring) 0

geht das ?

DeddyH 19. Mai 2013 10:41

AW: SQL...UNION mit unterschiedlichen Tabellen (Struktur)
 
Abhängig vom DBMS würde ich es mit CASE versuchen.
SQL-Code:
SELECT
  (CASE <Feld> WHEN <Wert> THEN Dings ELSE Bums END) AS Dideldei

mkinzler 19. Mai 2013 10:42

AW: SQL...UNION mit unterschiedlichen Tabellen (Struktur)
 
Ja

SQL-Code:
select
   ...
   iif( <Feldwert> = <Zielwert>, 1, 0),
   ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:09 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