Re: 3 SQL Abfragen in 1

Tech-Archive recommends: Speed Up your PC by fixing your registry

From: Stefan Müller-Dürholt (xmuelli_at_web.de)
Date: 08/25/04


Date: Wed, 25 Aug 2004 13:15:17 +0200

Leider habe ich diese Möglichkeit nicht, da wir ein Fremdtool (ActiveX)
Komponente verwenden - Das ganze ist ein Designer Tool in welchem wir
bestimmte Formulare erstellt haben!!!
Die einzelnen Felder müssen nun mit dem Inhalt der SQL Abfrage gefüllt
werden. Und JA: Das ganze ist eine
Kreuzabfrage über mehrere Tabellen - das ist ja auch mein Problem, das ich
nun 3 SQL Abfragen die für das Formular benötige vorliegen habe, nur diese
ZUSAMMEN in EINER SQL-Abfrage stehen müssen....
Die Abfragen funktionieren alle Super; einzeln!! Nur wie ich die in eine
Abfrage 'zusammensetzte' weiß ich irgendwie nicht ;(
Hier nochmal die 3 Abfragen:

1.

SELECT Waffenbesitzer.*,tbFWP.*, tbFWPWaffen.*, tbFWPGenehmigung.* FROM
(((Waffenbesitzer INNER JOIN tbFWP ON Waffenbesitzer.Code =
tbFWP.FPBesitzer) LEFT JOIN tbFWPWaffen ON tbFWP.FPCode =
tbFWPWaffen.FPWPass) LEFT JOIN tbFWPGenehmigung ON tbFWP.FPCode =
tbFWPGenehmigung.FPWSPass) LEFT JOIN tbFWPReise ON tbFWP.FPCode =
tbFWPReise.FPWRPass WHERE tbFWP.FPCode = §§§1

2.

SELECT FPWRNr, max(Erlaubt) as Erlaubt, max(Verboten) as Verboten FROM

(SELECT FPWRNr,'' As Erlaubt, FPWRLand as Verboten FROM tbFWPReise WHERE
FPWRArt=True

UNION ALL

SELECT FPWRNr,FPWRLand As Erlaubt, '' as Verboten FROM tbFWPReise WHERE
FPWRArt=False)

GROUP BY FPWRNr

3.

SELECT FPWSNr, max(Staaten) as Mitgliedsstaaten, max(Waffen) as Waffen FROM

(SELECT FPWSNr,'' As Staaten, FPWSLfdNr as Waffen FROM tbFWPGenehmigung
WHERE FPWSArt=True

UNION ALL

SELECT FPWSNr,FPWSLfdNr As Erlaubt, '' as Waffen FROM tbFWPGenehmigung WHERE
FPWSArt=False)

GROUP BY FPWSNr

"Frank Kalis" <nospam@insidesql.de> schrieb im Newsbeitrag
news:B8BCB938-EDC7-4335-8B42-7384DAE7755D@microsoft.com...
> So ganz schlau werde ich aus Deiner Beschreibung nicht.
> Ich vermute mal, daß Deine Tabellen irgendwie in Beziehung
> miteinanderstehen
> und Du auch mit weiteren JOINs und Unterabfragen zum Ziel kämst.
> Wenn das Formular,welches Du füllen mußt in VB oder einem Derivat erstellt
> ist und Du mit ADO darauf zugreifen kannst, würde ich mal nach "generating
> multiple recordsets" in BOL suchen. Stored Procedures sind in der Lage
> mehrere Resultsets zurückzugeben.
> --
> --Frank
> http://www.insidesql.de
>
> "Stefan Müller-Dürholt" wrote:
>
>> Eigentlich geht muss ich diese abfrage in ein formular was felder zum
>> drucken (also so einen feuerwaffenpass)
>>
>> mit den datenbank inhalten füllen muss...
>> Die teile funktionieren auch wunderbar, nur leider müssen sie halt alle 3
>> zusammen ausgeführt bzw.
>>
>> Abgefragt werden!!! Eine temporäre tabelle kann ich nicht erstellen ...
>>
>> Hat einer ne idee?? Mit nem UNION oder wie soll das funktionieren=??
>>
>> Danke & greetz
>>
>> stefan
>>
>> "Reiner Wolff" <spam@wolffsrudel.de> schrieb im Newsbeitrag
>> news:1gnezzifmexf2$.a9lowjlqkm9i$.dlg@40tude.net...
>> > Moin Stefan,
>> >
>> >> Hab ein riesen Problem: Habe mit Mühe und Not 3 SQL Abfragen
>> >> gebastelt,
>> >> die
>> >> ich für das ausfüllen eines Druckformulares benötige. Nun muss ich
>> >> diese
>> >> 3
>> >> SQL Abfragen zusammen legen in 1. Leider komme ich hier nicht wirklich
>> >> weiter ;( Einzeln funktionieren Sie zwar super, aber das mischen
>> >> klappt
>> >> nicht so richtig.
>> >> Kann einer helfen? Hier die Abfragen (1-3):
>> >
>> > Bei den 3 auf unterschiedlichen Tabellen basierenden Abfragen würde ich
>> > dann zu einer temporären Tabelle greifen, dort Abfrage 1 bis 3
>> > hineinschreiben und mir das Ergebnis mit einem Select ausgeben lassen.
>> > Wenn ich Dich richtig verstehe, möchtest Du die Ergebnisse doch in
>> > irgendeiner Art nebeneinander anzeigen, ohne dass sie tatsächlich über
>> > einen Schlüssel miteinander verbunden werden können, oder?
>> >
>> > HTH
>> > Greetinx aus Kiel
>> > Reiner
>> >
>> > --
>> > Ein Computer wird das tun,
>> > was Du programmiert hast - nicht das, was Du willst.
>> > (Murphy)
>>
>>
>>



Relevant Pages

  • Re: Funktion if update(Spalte) im Trigger???
    ... FROM deleted d INNER JOIN inserted i ON ... WHERE d.TabId IN (SELECT d.TabId ... dann soll in einer Historientabelle der alte Status mit Datum und Benutzer ...
    (microsoft.public.de.sqlserver)
  • Re: Freie Zimmer gesucht (aus datenbank)
    ... (SELECT id FROM bookings b WHERE ... roomno=r.id AND ...
    (de.comp.datenbanken.mysql)
  • Re: SQL String
    ... arbID FROM tblArbeiten WHERE vorID=1 ORDER BY arbID ... Select A.kokID, A.arbID AS von, T.arbID AS bis FROM qryAusbau AS A, ...
    (microsoft.public.de.access)
  • Re: Problem mit einer SQL Abfrage
    ... FROM (SELECT * FROM A WHERE active is null) c ... LEFT JOIN (SELECT * FROM B where restituion is null) d ...
    (de.comp.datenbanken.mysql)
  • Re: =?ISO-8859-15?Q?G=FCltig_von/bis?=
    ... SELECT `TeamA-ID`, `TeamB-ID` ... FROM spiele ... WHERE GueltigVon < DATE_SUB, INTERVAL 1 DAY) ... WHERE Datum < NOW ...
    (de.comp.datenbanken.mysql)