Verschachtelte SELECT Anweisung

Hallo

ich habe folgende Sql Anweisungen:

SELECT DISTINCT IDLand, Land FROM qryfUC1LandProd WHERE NOT EXISTS (SELECT * FROM ztblProduktVerkauftInLand Where FKProdukt=txtIDProdukt AND FKLand=IDLand);

und

SELECT DISTINCT IDLand, Land FROM qryfUC1LandProd WHERE
FKRegion=cboRegion;

Beide Anweisungen einzeln funktionieren.
Ich bräuchte aber beide in einer Anweisung.

Ich hoffe mir kann einer Weiterhelfen.

Mit freundlichen Grüßen

Franz

Sorry,
da kann ich nicht weiterhelfen.

Hallo Franz, leider kann ich dir spontan nicht helfen, da bin ich leider überfragt.

Conny

Hallo

ich habe folgende Sql Anweisungen:

SELECT DISTINCT IDLand, Land FROM qryfUC1LandProd WHERE NOT
EXISTS (SELECT * FROM ztblProduktVerkauftInLand Where
FKProdukt=txtIDProdukt AND FKLand=IDLand);

und

SELECT DISTINCT IDLand, Land FROM qryfUC1LandProd WHERE
FKRegion=cboRegion;

Beide Anweisungen einzeln funktionieren.
Ich bräuchte aber beide in einer Anweisung.

Ich hoffe mir kann einer Weiterhelfen.

Mit freundlichen Grüßen

Franz

Hallo Franz,
ohne die Datenbank näher zu kennen, würde ich raten, es mal mit UNION zu versuchen.
Dabei ist es wichtig, daß die Anzahl der selektierten Spalten in Statement 1 und 2 gleich ist, also:
SELECT DISTINCT
IDLand
,Land
FROM
qryfUC1LandProd
WHERE NOT
EXISTS (SELECT * FROM ztblProduktVerkauftInLand Where
FKProdukt=txtIDProdukt AND FKLand=IDLand)

UNION

SELECT DISTINCT
IDLand
, Land
FROM
qryfUC1LandProd
WHERE
FKRegion=cboRegion

Siehe auch:
http://sql.1keydata.com/de/sql-union-all.php

Ich hoffe, ich konnte helfen.
Gruß
Flons

Hallo, Franz !
Bin nicht nur Anfänger, sondern sogar ein blutiger.
Tut mir leid, da muss ich passen.
Gruss aus dem Allgäu.

Hallo Franz,
wenn ich das richtig Verstehe wird mit dem ersten SELECT schon eine Vorauswahl getroffen. Dann soll nochmals die Datenbank abgefragt werden, jedoch mit anderen Kriterien? Oder soll aus dem Ergebniss der ersten Abfrage erst die zweite geschalten werden? Oder soll aus dem Ergebnis der ersten Abfrage eine Teilmenge mit der zweiten Abfrage erstellt werden?

Gruß Pillepalle67

Hallo Franz,

da kann ich leider nicht helfen.
Access ist nicht mein Sachgebiet.

Freundliche Grüße
Wolfgang

Hallo Franz,
danke, dass Du mich als „Experten“ angeschrieben hast. Aber leider ist mein SQL-Wissen nicht so ausgereift, als dass ich Dir da helfen könnte. Ich bin selbst nur „Bastler“ und helfe mir oft mit Copy and Paste :wink:
Hoffe, es wird jemand anderes behilflich sein…
Gruß
Daniela

Hallo Franz,

leider kann ich dir im Moment nicht weiterhelfen. Wünsche dir aber viel Erfolg bei der Lösungssuche.

Viele Grüße

Benjamin

Hallo Pillepalle,

Es sollte aus dem Ergebniss der ersten Abfrage erst die zweite geschalten werden!
Würde mich über eine Antwort freuen.

Gruß Franz

Hallo Franz,

folgendes sollte Funktionieren:

SELECT … INTO
FROM …
Dann neue Abfrage SELECT … FROM

Bin mir nicht Sicher ob man hinter FROM wieder ein SELECT einbauen kann.

Gruß Pillepalle

Sorry für die späte Antwort.
Also wenn ich es richtig verstanden habe, haben beide Abfragen die gleichen Spalten. Du möchtest die Ergebnis-Menge beider Abfragen.
In diesem Falle könntest du die eine Abfrage zb qry1 nennen die zweite Abfrage qry2 und dann:
select * from qry1 union
select * from qry2

Damit erzielst du genau was du brauchst. Das erscheint
mir auch in dem speziellen Fall keine schlechte Lösung.

Schaue dir den Join befehl nochmal an !
Bei der 2ten Anweisung handelt es sich um einen inner join

Bei Distinct handelt es sich auch um einen Inner join

Be FKProdukt=txtIDPRodukt um einen Inner JOin

bei (FKProdukt=txtIDPRodukt) [und FKLAND=IDLAND handelt es sicProducth um einen LEFT oder Right Join]gegen(verschachteltes Select Statement(zweite Anweisung))

Ich habe kein SQL zum validieren installiert also probiere ich nur

SELECT DISTINCT IDLand,Land FROM qryfUC1 LandProd WHERE NOT EXISTS (SELECTS * FROM FKProduct=txtIDProdukt on ProduktFKProdukt RIGHT JOIN ( !SELECTt * FROM FKProduct = txtIDProdukt on ProduktFKProdukt IDLand on FKLAND Join

Fehler ! Da reicht die Macht von Joins und verschachtelten Select -Statement nicht aus. Beim ! muss ne 2te Klammer hin und das geht nicht.

Da hab ich ca ne 3/4 Stunde für gebraucht also bitte ein thx

Dafür doch nicht, die Frage war 6,5 Jahre alt! Vielleicht achtest du nächstes Mal aufs Datum, bevor du dich eine Dreiviertelstunde hinsetzt.