AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken SQL, eine Ansicht aus zwei verschienen Tabellen
Thema durchsuchen
Ansicht
Themen-Optionen

SQL, eine Ansicht aus zwei verschienen Tabellen

Ein Thema von Luckner · begonnen am 7. Jun 2018 · letzter Beitrag vom 8. Jun 2018
Antwort Antwort
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#1

SQL, eine Ansicht aus zwei verschienen Tabellen

  Alt 7. Jun 2018, 15:06
Datenbank: Firebird • Version: 2.6 • Zugriff über: Dataset
Hallo,
möchte gerne in einer DBTable eine Auftragsübersicht für eine Produktionsmaschine, aus 2 verschiedenen Tabellen, darstellen. Es gibt in diesen Tabellen Felder mit gleichen Name, die jedoch wenig miteinander zu tun haben. Es müsste dann eine 'select from Table1 and/or from Table2' sein mit jeweils einem 'where' für jede Table. Könnte mir Jemand, bitte, einen Ansatz geben?

Danke und Gruß, Luckner
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: SQL, eine Ansicht aus zwei verschienen Tabellen

  Alt 7. Jun 2018, 15:12
Hallo,

Select T1.Id,T1.Name,T2.Name, T2.Tab1Id From Tabelle1 T1
Join Tabelle2 T2 On T1.Id=T2.Tab1Id

T1 und T2 sind Tabellenaliase
Das Feld Tab1Id in Tabelle2 ist der Foreign Key auf das Feld Id von Tabelle1
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.058 Beiträge
 
Delphi 12 Athens
 
#3

AW: SQL, eine Ansicht aus zwei verschienen Tabellen

  Alt 7. Jun 2018, 15:16
Es ist nicht ganz klar, ob du einen JOIN oder eine UNION brauchst. Kannst du dein Problem an einem konkreten Beispiel genauer beschreiben?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.211 Beiträge
 
Delphi 12 Athens
 
#4

AW: SQL, eine Ansicht aus zwei verschienen Tabellen

  Alt 7. Jun 2018, 15:23
Ich glaub er meint JOIN.
JOIN ... beide Tabellen nebeneinander (Felder aneinandergehängt)
UNION ... beide Tabellen untereinander (Datensätze aneinandergehängt)

Wenn Felder gleich heißen und du willst beide im Ergebnis/Record haben, dann mußt du eben einen der Beiden umbenennen.
SELECT t1.aaa, t2.aaa AS bbb FROM ...

Siehe hoika: das geht bei vielen DBMS und DB-Komponenten, wobei dort die DB das umbenennt. (z.B. "_1" an den doppelten Namen anhängen)
Aber besser ist es meistens, wenn du es umbenennst, dann weißt du auch immer wie es heißt, unabhängig davon, wie das DBMS solche Probleme löst.


Und du willst doch bestimmt auch eine DBQuery-Komponente und keine DBTable-Komponente verwenden
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 7. Jun 2018 um 15:30 Uhr)
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: SQL, eine Ansicht aus zwei verschienen Tabellen

  Alt 7. Jun 2018, 15:32
An einer Maschine werden Aufträge von 2 verschiedenen Auftragstabellen erstellt. Der Maschineneinrichte möchte eine tabellarische übersicht haben über die gesamten Aufträge für diese Maschine. Also ich glaube, dass 'UNION' das Richtige wäre. Tabelle2 hat keine Gemeinsamkeiten mit Tabelle1. Ausser, dass die Felder gleich lauten:

Luckner
  Mit Zitat antworten Zitat
Luckner

Registriert seit: 28. Nov 2006
Ort: Berlin
418 Beiträge
 
Delphi 7 Enterprise
 
#6

AW: SQL, eine Ansicht aus zwei verschienen Tabellen

  Alt 7. Jun 2018, 15:34
Ich verwende DBQuery.
  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 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