Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   SQL Unterabfrage= kein ergebniss (https://www.delphipraxis.net/132577-sql-unterabfrage%3D-kein-ergebniss.html)

Teekeks 15. Apr 2009 15:01

Datenbank: MySQL • Version: 4.0.18 • Zugriff über: TMySQL40Conection

SQL Unterabfrage= kein ergebniss
 
Hi!
Ich will eigentlich nur eine ganz einfache Unterabfrage bei MySQL vornehmen.
SQL-Code:
SELECT *
FROM Buecher where Nummer =

select BuchNR
from Ausleihvorgang
where NutzerNR = 2 
)
Es müsste eigentlich das Buch mit der Nummer 3 zurück kommen.
(in Ausleihvorgang ist der datensatz:
NutzerNR= 2
BuchNR= 3
und in Buecher ist dieser:
Nummer=3)

Wisst ihr was ich falsch mache?
Ich hab echt nicht viel Erfahrung mit SQL.
Ich hab nur vor mir ein Buch mit dem ich nicht weiterkomme....

gruß Teekeks

DeddyH 15. Apr 2009 15:13

Re: SQL Unterabfrage= kein ergebniss
 
Versuch es mal so:
SQL-Code:
SELECT *
FROM Buecher where Nummer IN
(
select BuchNR
from Ausleihvorgang
where NutzerNR = 2
)
oder so:
SQL-Code:
SELECT * FROM Buecher
JOIN AusleihVorgang ON Ausleihvorgang.BuchNr = Buecher.Nummer
WHERE Ausleihvorgang.Nutzer = 2

khh 15. Apr 2009 15:21

Re: SQL Unterabfrage= kein ergebniss
 
Zitat:

Zitat von Teekeks
Hi!

SQL-Code:
SELECT *
FROM Buecher where Nummer =

select BuchNR
from Ausleihvorgang
where NutzerNR = 2 
)
gruß Teekeks

die syntax sollte so funktionieren, Voraussetzung ist aber dass der subselect nur einen ds zurückgibt.
heisst nutzernr 2 darf nur einmal vorkommen.

Gruss KH

DeddyH 15. Apr 2009 16:05

Re: SQL Unterabfrage= kein ergebniss
 
Deshalb hatte ich auch das "=" in "IN" geändert ;)

khh 15. Apr 2009 16:15

Re: SQL Unterabfrage= kein ergebniss
 
Zitat:

Zitat von DeddyH
Deshalb hatte ich auch das "=" in "IN" geändert ;)

eben ;-)

Teekeks 15. Apr 2009 17:37

Re: SQL Unterabfrage= kein ergebniss
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hm...
Ich krige den Fehler den ich im Anhang angehängt habe...

DeddyH 15. Apr 2009 17:41

Re: SQL Unterabfrage= kein ergebniss
 
Und die Exception steht genau vor dem interessanten Quellcode.

Teekeks 15. Apr 2009 17:44

Re: SQL Unterabfrage= kein ergebniss
 
Der Code dahinter:
Delphi-Quellcode:
{...}
  with HauptForm.SQLQuery2 do
  begin
    Close;
    SQL.Clear;
    SQL.Add('SELECT * FROM Buecher WHERE Nummer IN');
    SQL.Add('(');
    SQL.Add(' SELECT BuchNR FROM Ausleihvorgang WHERE NutzerNR = '+inttostr(User.Nr)+' AND Aktiv = 1');
    SQL.Add(')');
    Open;
{...}

DeddyH 15. Apr 2009 17:45

Re: SQL Unterabfrage= kein ergebniss
 
Welche MySQL-Version ist das?

nahpets 15. Apr 2009 17:48

Re: SQL Unterabfrage= kein ergebniss
 
Hallo,

probiere es bitte mal damit:
SQL-Code:
select Buecher.*  /* <-- Hier bitte die Spalten auflisten, die ins Ergebnis sollen */
from Buecher, Ausleihvorgang
where Buecher.Nummer = Ausleihvorgang.BuchNr
and Ausleihvorgang.NutzerNr = 2
and Ausleihvorgang.Aktiv = 1


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:57 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz