Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi zu Ergebnismenge Feld hinzufügen mit SQL (https://www.delphipraxis.net/108201-zu-ergebnismenge-feld-hinzufuegen-mit-sql.html)

haentschman 8. Feb 2008 20:10

Datenbank: firebird • Version: 2.0 • Zugriff über: Zeos

zu Ergebnismenge Feld hinzufügen mit SQL
 
Hallo alle... :-D

ich wüßte zwar nicht daß das möglich ist, aber vieleicht gibt es ja einen Trick um das ohne Action zu lösen :wink:

Vorraussetzungen:

- mehrere Tabellen, fast identische Felder (jede Tabelle für einen Komponententyp)

was ich brauche:

- eine Ergebnismenge mit allen verfügbaren Feldern aus allen Tabellen
( mit UNION zusammengesetzt ) ... nicht schwer.

was ich gern hätte:

- in der Ergebnismenge ein Feld 'Typ' (welches in keiner Tabelle vorhanden ist) womit ich dann in der Ergebnismenge auseinanderhalten kann welcher Datensatz aus welcher Tabelle kommt.

:?: ist so etwas mit einfachen Mittel möglich oder nur über Umwege.


Freue mich auf Eure Vorschläge... :-D

PS:
- ich könnte ja schon beim DB Design das Feld mit anlegen mit dem Typ als Inhalt...aber dann hätte ich pro Tabelle 1 Feld mehr.
- wäre das schlechtes Design oder sinnvoll im nachhinein :roll:

DeddyH 8. Feb 2008 20:13

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
Sollte so gehen:
SQL-Code:
SELECT Feld1, Feld2, 'Tabelle1' AS Typ
FROM Tabelle1
UNION
SELECT Feld1, Feld2, 'Tabelle2' AS Typ
FROM Tabelle2

mkinzler 8. Feb 2008 20:14

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
Du kannst ja in der Abfrage das Feld hinzufügen
SQL-Code:
select *, 'Tabelle1' as NeuesFeld from Tabelle1
union
select *, 'Tabelle2' as NeuesFeld from Tabelle2
...
Aber besser wäre es die Tabellen in eine zu verschmelzen, welche diese Eigenschaft schon hat.

haentschman 8. Feb 2008 20:17

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
Danke für die schnelle Antwort...

- das würde zwar das Feld mit Namen der Tabelle erzeugen, aber ohne Feldinhalte.
- ich bräuchte aber die Tabellennamen / Typ als Feldinhalt in jedem Datensatz

oder :gruebel:

DeddyH 8. Feb 2008 20:18

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
Probier' s doch erstmal aus, bevor Du meckerst.

haentschman 8. Feb 2008 20:21

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
Zitat:

Probier' s doch erstmal aus, bevor Du meckerst.
...wie immer äußerst feinfühlig und direkt :-D

DeddyH 8. Feb 2008 20:22

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
So bin ich halt :-D

haentschman 8. Feb 2008 20:24

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
...dann mach ich mich mal ans testen :roll:

Danke an alle... :thumb:

mkinzler 8. Feb 2008 20:24

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
2 fast gleiceh Antworten würden mich zumindest dazu anregen es zu Testen.
Aber wie gesagt, besser eine Tabelle mit Spalte, die Ds genauer spezifiziert.

haentschman 8. Feb 2008 21:14

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
Zitat:

Aber wie gesagt, besser eine Tabelle mit Spalte, die Ds genauer spezifiziert.
...das ist das, was ich mit
Zitat:

- ich könnte ja schon beim DB Design das Feld mit anlegen mit dem Typ als Inhalt...aber dann hätte ich pro Tabelle 1 Feld mehr.
- wäre das schlechtes Design oder sinnvoll im nachhinein
meinte.

:?: somit würde die Variante nicht unter schlechtes Datenbankdesign fallen.

mkinzler 8. Feb 2008 21:16

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
Nein, das würde ich nicht als schlechtes Design ansehen. Ich würde dann aber das Feld nicht im Klartext (Tabellenname) sondern als Fremdschlüssel implementieren.

haentschman 8. Feb 2008 21:20

Re: zu Ergebnismenge Feld hinzufügen mit SQL
 
ah jetzt ja... :-D

ich schaue mir dann mal beide Varianten an, welche sich unkomplizierter implementieren läßt.

Danke für Euer Interesse. :hi:


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:03 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz