AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Interbase: Merkwürdiges Verhalten bei LEFT OUTER JOIN
Thema durchsuchen
Ansicht
Themen-Optionen

Interbase: Merkwürdiges Verhalten bei LEFT OUTER JOIN

Ein Thema von HeZa · begonnen am 7. Apr 2020 · letzter Beitrag vom 14. Apr 2020
 
Delphi.Narium

Registriert seit: 27. Nov 2017
2.598 Beiträge
 
Delphi 7 Professional
 
#9

AW: Interbase: Merkwürdiges Verhalten bei LEFT OUTER JOIN

  Alt 8. Apr 2020, 12:48
Irgendwie ist mir eigentlich garnicht klar, was genau gewünscht ist.
SQL-Code:
create table test (id int);

insert into test (id) values (1);

create view v1_1 as select * from test t1 where t1.id = 1;
create view v1_0 as select * from test t1 where t1.id = 0;
create view v1_1_0 as select * from test t1 where t1.id = 1 or t1.id = 0;

select t1.id as id1, t2.id as id2, t3.id as id3 from
  v1_1 t1 -- mit der Beispieltabelle eigentlich eher sinnfrei
  left outer join test t2 on t2.id = t1.id
  left outer join test t3 on t3.id = t1.id; -- steht alles schon im ersten left ...

select t1.id as id1, t2.id as id2, t3.id as id3 from
  v1_0 t1 -- mit der Beispieltabelle eigentlich eher sinnfrei
  left outer join test t2 on t2.id = t1.id
  left outer join test t3 on t3.id = t1.id; -- steht alles schon im ersten left ...

select t1.id as id1, t2.id as id2, t3.id as id3 from
  v1_1_0 t1 -- mit der Beispieltabelle eigentlich eher sinnfrei
  left outer join test t2 on t2.id = t1.id
  left outer join test t3 on t3.id = t1.id; -- steht alles schon im ersten left ...

-- hier müsste man mit 'nem "drumgelegten" select ggfls. noch Sätze mit gleicher id1 zusammenfassen
-- sum, max ... und group by id1
select t1.id as id1, t2.id as id2, null as id3 from
  v1_1 t1
  left outer join test t2 on t2.id = t1.id
union
select t1.id as id1, null as id2, t3.id as id3 from
  v1_0 t1
  left outer join test t3 on t3.id = t1.id;

oder

oder

oder

...
Das Beispiel ist zwar geeignet um festzustellen, dass x und y zum gleichen Ergebnis kommen, während z was anders behauptet, aber es ist nicht geeignet um zu verifizieren ob überhaupt eines der Ergebnis der umzusetzenden Aufgabenstellung entspricht, geschweige denn nach sinnvollen und verifizierbaren Alternativen zu suchen.

Bitte einfach mal die Aufgabenstellung verbal beschreiben, dann können wir weitersehen, welche Lösungsmöglichkeiten existieren.
  Mit Zitat antworten Zitat
 


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 23:46 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-2025 by Thomas Breitkreuz