[gelöst] Datenbankabfrage SELECT-Verständnis

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

schreck
Beiträge: 4
Registriert: Di, 14.09.2010 18:57

[gelöst] Datenbankabfrage SELECT-Verständnis

Beitrag von schreck »

Hi,

ich habe eine Tabelle A mit nur einem Datensatz. Und eine Tabelle B mit vielen Datensätzen.

Ich möchte jetzt eine Abfrage erstellen, in deren Resultat immer der Eine Datensatz aus Tabelle A und aus Tabelle B eine Bestimmte Auswahl ausgegeben wird.

Beispiel:

Tabelle A hat Felder AA, AB mit nur eienm Datensatz.
Tabelle B hat Felder BA, BB, BC mit vielen Datensätzen.

Code: Alles auswählen

Abfrage: Gib mir aus A die Felder AA, AB und  aus B die Felder BA, BB, BC, wenn Wert von BB gleich "XX"
Mögliches Ergebnis Wenn XX mehrmals vorkommt:

Code: Alles auswählen

AA="Hallo" AB="Welt" BA="Mit" BB="XX" BC="geben"
AA="Hallo" AB="Welt" BA="Ohne" BB="XX" BC="brauchen"
AA="Hallo" AB="Welt" BA="Durch" BB="XX" BC="werden"
...
Sollte kein Datensatz dem Kreterium BB = "XX" so möchte ich als Ergebnis folgenden haben:

Code: Alles auswählen

AA="Hallo" AB="Welt" BA="" BB="" BC=""
Wie erstelle ich solch eine Abfrage ?

Danke für Eure Mühen.
Zuletzt geändert von schreck am Mi, 02.02.2011 11:11, insgesamt 1-mal geändert.
OOo 3.2.1
Windows 7 / Ubuntu 10.04
AndreasJBittner
*****
Beiträge: 473
Registriert: Fr, 09.10.2009 16:44
Wohnort: Bielefeld
Kontaktdaten:

Re: Datenbankabfrage SELECT-Verständnis

Beitrag von AndreasJBittner »

Hallo,

probiers mal mit

Code: Alles auswählen

SELECT * FROM A, B WHERE BB = 'XX';
Wenn ich Dein Problem richtig verstanden habe, müßte das klappen.

Grüße
Andreas
LO 4.3
AMD Athlon 64 3700+, 2.21 GHz, 4 GB RAM, Win XP SP3
iMac 2 GHz, 16 GB RAM/MacBookPro, 8 GB RAM, Mac OS X 10.9.5
Intel Core2 Quad CPU Q6600 @ 2,4 GHz, 4 GB RAM, Suse 13.2

MySQL 5.1: Pentium III, 666 MHz, 512 MB, Suse 12.1
schreck
Beiträge: 4
Registriert: Di, 14.09.2010 18:57

Re: Datenbankabfrage SELECT-Verständnis

Beitrag von schreck »

Das klappt, wenn bei BB mind. 1 mal 'XX' vorkommt. Ich möchte jedoch auch EIN Result haben, wenn bei BB kein 'XX' vorkommt.
OOo 3.2.1
Windows 7 / Ubuntu 10.04
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Datenbankabfrage SELECT-Verständnis

Beitrag von DPunch »

Aloha

Das würde so aussehen:

Code: Alles auswählen

SELECT "AA","AB","B".* FROM "A" LEFT OUTER JOIN (SELECT "BA","BB","BC" FROM "B" WHERE "BB" = 'XX') AS "B" ON TRUE
(Häkchen bei "SQL-Kommando direkt ausführen" setzen)
schreck
Beiträge: 4
Registriert: Di, 14.09.2010 18:57

Re: Datenbankabfrage SELECT-Verständnis

Beitrag von schreck »

Danke, hat super funktioniert. :D :D
OOo 3.2.1
Windows 7 / Ubuntu 10.04
Antworten