AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi sql abfrage - tabellen vergleichen
Thema durchsuchen
Ansicht
Themen-Optionen

sql abfrage - tabellen vergleichen

Ein Thema von Delphi-Phil · begonnen am 17. Mär 2008 · letzter Beitrag vom 17. Mär 2008
Antwort Antwort
Seite 1 von 3  1 23      
Delphi-Phil

Registriert seit: 22. Jun 2007
410 Beiträge
 
#1

sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 21:10
Datenbank: MySql • Zugriff über: ADO
Hallo Delphianer,

Ich habe folgendes Problem:

ich benötige eine SQL Abfrage die mir aus einer Datenbank ausgibt, welche Zuegnisse von einem Schüler noch nicht geschrieben worden sind.

Es gibt folgende Tabellen:

Schüler - ID, Vorname, Nachname, usw, usw

Klassen - ID, Klassenname

SchülerKlassen - ID, IDSchüler, IDKlasse

SchülerFächer - ID, IDSchüler, IDKlasse, IDFach

Zeugnisse - ID, IDSchüler, IDKlasse, IDFach, Note, Zeugnistext


Reicht das an Infos?? Ich bin für alle Hilfen dankbar...


Gruß Phil
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 21:48
SQL-Code:
SELECT *
FROM schüler s
INNER JOIN schülerfächer sf
  ON s.id = sf.idschüler
WHERE NOT EXISTS (SELECT *
                  FROM zeugnisse
                  WHERE idschüler = s.id
                    AND idfach = sf.id)
Gruss
Thorsten
  Mit Zitat antworten Zitat
Delphi-Phil

Registriert seit: 22. Jun 2007
410 Beiträge
 
#3

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 21:50
vielen dank, ich werde es sofort testen!!


Ich melde mich dann ob es funst...danke!


Gruß Phil
  Mit Zitat antworten Zitat
Delphi-Phil

Registriert seit: 22. Jun 2007
410 Beiträge
 
#4

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 22:11
hallo ich habe die abfrage ausprobiert...sie funst!

jetzt muss man irgendwie rausfinden ob die daten die zurückkommen stimmen... nur wie??


Gruß Phil
  Mit Zitat antworten Zitat
Delphi-Phil

Registriert seit: 22. Jun 2007
410 Beiträge
 
#5

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 22:22
ich habe meine datenbank jetzt mal mit nur 3 datensätzen getestet und siehe da es funst. vielen dank erstmal!


Jetzt muss am ende aber folgendes raus kommen: der name von dem schüler und das fach wo das zeugnis fehlt.

Jetzt kommt ja nur die Fach ID raus!


gruß Phil
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 22:24
Was sollte am Ergebnis nicht stimmen? Ich verstehe das Problem nicht.
Deshalb benutzt man doch eine Datenbank, da macht man ein paar Stichproben und wenn das ok ist dann sollte das stimmen.
Außerdem ist diese Abfrage nun wirklich nicht kompliziert, das kann man doch leicht überblicken.

Edit: Wo sind die existierenden Fächer gespeichert?

Verwunderte Grüsse
Thorsten
  Mit Zitat antworten Zitat
Delphi-Phil

Registriert seit: 22. Jun 2007
410 Beiträge
 
#7

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 22:27
also erstmal sry. das was raus kommt stimmt natürlich, ich habe mich ein bissel doof ausgedrückt.

In dem Datensatz der jetzt raus kommt, steht der name von dem schüler und die id von dem fach zu dem das zeugnis fehlt. Es müsste nur statt der id zu dem fach noch der fachname raus kommen.


gruß Phil
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 22:28
Wo sind die existierenden Fächer gespeichert?
  Mit Zitat antworten Zitat
Delphi-Phil

Registriert seit: 22. Jun 2007
410 Beiträge
 
#9

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 22:29
in der tabelle fächer
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: sql abfrage - tabellen vergleichen

  Alt 17. Mär 2008, 22:32
Das hast du oben nicht definiert!

Vielleicht so...
SQL-Code:
SELECT vorname, nachname, fachname
FROM schüler s
INNER JOIN schülerfächer sf
  ON s.id = sf.idschüler
INNER JOIN fächer f
  ON sf.idfach = f.idfach
WHERE NOT EXISTS (SELECT *
                  FROM zeugnisse
                  WHERE idschüler = s.id
                    AND idfach = sf.id)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 14:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz