JA/NEIN Feld Kriterium in Abfrage
Moderator: heiner
JA/NEIN Feld Kriterium in Abfrage
Hallo,
ich versuche schon einige Tage für unsere OGS Betreuung eine Abfrage zu generieren,
über alle Kinder, welche ein bestimmtes Kriterium erfüllen.
Dazu habe ich weitere Zusatzfelder definiert, und zwar Klasse und OGS-Mitglied.
Ich möchte alle Kinder auflisten, welche in der OGS angemeldet sind mit Name,Vorname ( beide aus der Mitgliedtabelle) und Klasse ( aus der Zusatzfeldertabelle).
Da mir die Auswertung über JVerein nicht ausreicht, möchte ich diese Abfrage über Open Office generien, um damit direkt ein Kalenderblatt zu füllen.
Leider bekomme ich die Abfrage aber nicht so hin, wie ich es mir vorstelle, sondern erhalte mit folgender Definition
alle Kinder mit ihrer Klasse aufgelistet, und die, welche in der OGS angemeldet sind tauchen doppelt auf.
Wie kann ich die Abfrage so abändern, das eben nur die Kinder, welche das OGS=WAHR Kriterium erfüllen angezeigt werden.
Gruß
RWo
ich versuche schon einige Tage für unsere OGS Betreuung eine Abfrage zu generieren,
über alle Kinder, welche ein bestimmtes Kriterium erfüllen.
Dazu habe ich weitere Zusatzfelder definiert, und zwar Klasse und OGS-Mitglied.
Ich möchte alle Kinder auflisten, welche in der OGS angemeldet sind mit Name,Vorname ( beide aus der Mitgliedtabelle) und Klasse ( aus der Zusatzfeldertabelle).
Da mir die Auswertung über JVerein nicht ausreicht, möchte ich diese Abfrage über Open Office generien, um damit direkt ein Kalenderblatt zu füllen.
Leider bekomme ich die Abfrage aber nicht so hin, wie ich es mir vorstelle, sondern erhalte mit folgender Definition
alle Kinder mit ihrer Klasse aufgelistet, und die, welche in der OGS angemeldet sind tauchen doppelt auf.
Wie kann ich die Abfrage so abändern, das eben nur die Kinder, welche das OGS=WAHR Kriterium erfüllen angezeigt werden.
Gruß
RWo
-
- Beiträge: 10
- Registriert: Freitag 23. September 2011, 13:42
Re: JA/NEIN Feld Kriterium in Abfrage
Hallo,
mit dem Schlüsselwort DISTINCT werden alle doppelten eleminiert.
Du musst wissen, dass AND stärker bindet als OR. Siehe dazu hier http://www.teialehrbuch.de/Kostenlose-K ... toren.html
D.h. Du suchst entweder Mitglieder die OGS und Felddefinition true ODER einfach nur das Label Klasse bestitzen.
Vielleicht hilft Dir das ja weiter.
Wenn nicht bräucht ich mal die Tabellen Beschreibung mit Primary Key und Foreign Key. Dann kann ich Dir besser weiter helfen.
Grüße
mit dem Schlüsselwort DISTINCT werden alle doppelten eleminiert.
Du musst wissen, dass AND stärker bindet als OR. Siehe dazu hier http://www.teialehrbuch.de/Kostenlose-K ... toren.html
D.h. Du suchst entweder Mitglieder die OGS und Felddefinition true ODER einfach nur das Label Klasse bestitzen.
Vielleicht hilft Dir das ja weiter.
Wenn nicht bräucht ich mal die Tabellen Beschreibung mit Primary Key und Foreign Key. Dann kann ich Dir besser weiter helfen.
Grüße
Re: JA/NEIN Feld Kriterium in Abfrage
Hallo,
danke erst mal für Deine Hilfe.
Muß mich noch mit dem Link auseinander setzen.
Denke aber Distinct hilft mir hier nicht weiter, ich laß mich aber gerne überzeugen.
Nochmals zur Verdeutlichung, folgende drei Tabellen sind miteinender in jverein verknüpft, siehe Bild 1 Ziel ist es die Abfrage mit den Daten der Kinder zu füllen, welche zur Zeit in der OGS angemeldet sind. Das ist das Auswahlkriterium.
Ich möchte aber aus der Mitglieder Tabelle den Namen und Vornamen und aus der Zusatzfeldertabelle die aktuelle Klasse mit anzeigen.
Im Moment zeigt die Abfrage aber alle Kinder mit ihrer Klasse und die welche in der OGS angemeldet sind nochmal, also doppelt an, weil ich die Kriterien oder verknüpft habe.
Das will ich verhindern. Komme aber nicht auf die Lösung für die richtige Abfrage.
Es gibt mehrere Felder in Zusatzfelder, welche JA/Nein definition besitzen.
OGS; Vormittagsbetreuung; Nichtmitglied;
Eigentlich würde ich es so in Worten definieren:
Zeige alle Mitgleider mit Name, Vorname und Klasse( ohne Einschränkung ) ( und nur ) welche OGS = True haben.
Besipiel:
Frank Mustermann 4a ( hat OGS = True)
Otto John Doe 3c ( hat Vormittagsbetreuung = True)
Dann sollte die Abfrage nur liefern:
Frank Mustermann 4a
Aber wie setze ich das jetzt in der Abfrage richtig um.
Hier noch die Tabellenbeschreibungen:
Gruß
RWo
danke erst mal für Deine Hilfe.
Muß mich noch mit dem Link auseinander setzen.
Denke aber Distinct hilft mir hier nicht weiter, ich laß mich aber gerne überzeugen.
Nochmals zur Verdeutlichung, folgende drei Tabellen sind miteinender in jverein verknüpft, siehe Bild 1 Ziel ist es die Abfrage mit den Daten der Kinder zu füllen, welche zur Zeit in der OGS angemeldet sind. Das ist das Auswahlkriterium.
Ich möchte aber aus der Mitglieder Tabelle den Namen und Vornamen und aus der Zusatzfeldertabelle die aktuelle Klasse mit anzeigen.
Im Moment zeigt die Abfrage aber alle Kinder mit ihrer Klasse und die welche in der OGS angemeldet sind nochmal, also doppelt an, weil ich die Kriterien oder verknüpft habe.
Das will ich verhindern. Komme aber nicht auf die Lösung für die richtige Abfrage.
Es gibt mehrere Felder in Zusatzfelder, welche JA/Nein definition besitzen.
OGS; Vormittagsbetreuung; Nichtmitglied;
Eigentlich würde ich es so in Worten definieren:
Zeige alle Mitgleider mit Name, Vorname und Klasse( ohne Einschränkung ) ( und nur ) welche OGS = True haben.
Besipiel:
Frank Mustermann 4a ( hat OGS = True)
Otto John Doe 3c ( hat Vormittagsbetreuung = True)
Dann sollte die Abfrage nur liefern:
Frank Mustermann 4a
Aber wie setze ich das jetzt in der Abfrage richtig um.
Hier noch die Tabellenbeschreibungen:
Gruß
RWo
Re: JA/NEIN Feld Kriterium in Abfrage
Hier nochmal der derzeitige Ergebnis der Abfrage:
Die einträge in den Kästchen gehören immer zu einem Kind, davon will ich nur den mit der Klasse sehen und die anderenr Kinder ohne OGS eintrag will ich gar nicht sehen. Dazu muß die Oder Verknüpfung eigentlich in eine UND Verknüpfung geändert werden, dann kommt aber ein leere Tabelle dabei heraus.
Gruß
RWo
Die einträge in den Kästchen gehören immer zu einem Kind, davon will ich nur den mit der Klasse sehen und die anderenr Kinder ohne OGS eintrag will ich gar nicht sehen. Dazu muß die Oder Verknüpfung eigentlich in eine UND Verknüpfung geändert werden, dann kommt aber ein leere Tabelle dabei heraus.
Gruß
RWo
-
- Beiträge: 10
- Registriert: Freitag 23. September 2011, 13:42
Re: JA/NEIN Feld Kriterium in Abfrage
Hallo RWo,
Distinct habe ich nur ins Spiel gebracht, da Du was von doppelten einträgen geschrieben hast.
Zu Deiner Anfrage, wenn die einzige Bedingung die zu erfüllen ist, dass Label = "OSG" und FeldJaNein=true, dann sieht die Anfrage wie folgt aus:
Beachte: ersetze XXX.KLASSE mit der Tabelle und Spalte in der die Klasse zu finden ist.
Die Anfrage erfüllt jetzt genau diese Beschreibung von Dir.
Aber rein logisch sollte es stimmen wenn ich es richtig verstanden hab
Grüße
Christian
Distinct habe ich nur ins Spiel gebracht, da Du was von doppelten einträgen geschrieben hast.
Zu Deiner Anfrage, wenn die einzige Bedingung die zu erfüllen ist, dass Label = "OSG" und FeldJaNein=true, dann sieht die Anfrage wie folgt aus:
Code: Alles auswählen
select distinct MITGLIED.NAME as 'NAME', MITGLIED.VORNAME as 'VORNAME', XXX.KLASSE as 'KLASSE'
from MITGLIED as M, ZUSATZFELDER as Z, FELDDEFINITIONEN as F
where M.ID = Z.MITGLIED and Z.FELDDEFINITION = F.ID
and F.LABEL = 'OGS' and Z.FELDJANEIN = True
Die Anfrage erfüllt jetzt genau diese Beschreibung von Dir.
Ich hoffe das klappt so, ich kann es leider nicht testen.Zeige alle Mitgleider mit Name, Vorname und Klasse( ohne Einschränkung ) ( und nur ) welche OGS = True haben.
Aber rein logisch sollte es stimmen wenn ich es richtig verstanden hab
Grüße
Christian
Re: JA/NEIN Feld Kriterium in Abfrage
Hallo Christian,
danke für deine Geduld, hat aber leider auch nicht funktioniert.
Ich denke es liegt an der Tatsache, dass sowohl das OGS JA/NEIN Feld per Zusatzfelder.LABEL ansprechbar ist, als auch das Feld Klasse.
Wenn ich nämlich beide der Abfrage hinzufüge erhalte ich eine leere Tabelle.
Ich werde mir eine andere Lösung überlegen, wie ich diese Kriterien in einer Liste darstelle.
Dank dir trotzdem für Deine Hilfe.
Gruß
René Wolters
danke für deine Geduld, hat aber leider auch nicht funktioniert.
Ich denke es liegt an der Tatsache, dass sowohl das OGS JA/NEIN Feld per Zusatzfelder.LABEL ansprechbar ist, als auch das Feld Klasse.
Wenn ich nämlich beide der Abfrage hinzufüge erhalte ich eine leere Tabelle.
Ich werde mir eine andere Lösung überlegen, wie ich diese Kriterien in einer Liste darstelle.
Dank dir trotzdem für Deine Hilfe.
Gruß
René Wolters
-
- Beiträge: 10
- Registriert: Freitag 23. September 2011, 13:42
Re: JA/NEIN Feld Kriterium in Abfrage
Hallo Rene ( Sorry ich weiß nicht wie ich den Strich auf das e bekomme )
Das ist doch ein lösbares Problem, ich hatte einfach übersehen wo die Klasse hinterlegt ist. Irgendwie habe ich die Tatsache ignoriert dass es ein weiteres Zusatzfeld ist.
Also mal schauen ob ich eine Lösung mit entsprechender Subquery auf Anhieb hinbekomme
Dann versuch mal ob es damit funktioniert ganz sicher bin ich mir noch nicht, denn die joins muss man sich schon überlegen
Ich bin jetzt mal davon ausgegangen, dass alle Mitglieder die OGS sind auch immer einer Klasse zugeordnet haben, wenn dem nicht so ist, muss
die äußere Anfrage die Subquery werden.
Grüße
Christian
Das ist doch ein lösbares Problem, ich hatte einfach übersehen wo die Klasse hinterlegt ist. Irgendwie habe ich die Tatsache ignoriert dass es ein weiteres Zusatzfeld ist.
Also mal schauen ob ich eine Lösung mit entsprechender Subquery auf Anhieb hinbekomme
Code: Alles auswählen
select distinct MITGLIED.NAME as 'NAME', MITGLIED.VORNAME as 'VORNAME', X.FELD as 'KLASSE'
from MITGLIED as M, ZUSATZFELDER as Z, FELDDEFINITIONEN as F, (
select distinct ZUSATZFELDER.FELD, MITGLIED.ID
from MITGLIED as MI, ZUSATZFELDER as ZU, FELDDEFINITIONEN as FE
where MI.ID = ZU.MITGLIED and ZU.FELDDEFINITION = FE.ID
and FE.LABEL = 'Klasse' ) as X
where X.ID = Z.MITGLIED and Z.FELDDEFINITION = F.ID
and F.LABEL = 'OGS' and Z.FELDJANEIN = True
Ich bin jetzt mal davon ausgegangen, dass alle Mitglieder die OGS sind auch immer einer Klasse zugeordnet haben, wenn dem nicht so ist, muss
die äußere Anfrage die Subquery werden.
Grüße
Christian
Re: JA/NEIN Feld Kriterium in Abfrage
Hallo Christian,
wow, das geht aber ziemlich über mein Verständnis
Tschuldige, hab es leider nicht eher geschaft, dir zu antworten.
Ich habe auch versucht, deinen Vorschlag anzupassen, aber erhalte damit nur eine leere Tabelle.
Ich muß auch sagen, dass ich zwar vom Grundprizip verstanden habe, dass Du eine geschachtelte Abfrage aufgesetzt hast, aber der ganze Zusammenhang geht mir dabei doch ab.
Es läuft wohl doch darauf hinaus, wenn ich JVEREIN nutzen will, muß ich auf SQL aufsetzen, um die Auswertungen so zu erhalten, wie ich sie mir vorstelle, der direkte Export von auswertungen aus JVerein ist leider so nicht brauchbar für mich.
Es muß nunmal für die Endanwender am Ende auf einfaches Knöpfchen drücken hinauslaufen, um die Auswertungslisten zu erhalten, die sie brauchen.
Also erstmal SQL lernen..... und dann sehen wir weiter.....
Nochmals danke für Deine Unterstützung.
Gruß
RWo
wow, das geht aber ziemlich über mein Verständnis
Tschuldige, hab es leider nicht eher geschaft, dir zu antworten.
Ich habe auch versucht, deinen Vorschlag anzupassen, aber erhalte damit nur eine leere Tabelle.
Ich muß auch sagen, dass ich zwar vom Grundprizip verstanden habe, dass Du eine geschachtelte Abfrage aufgesetzt hast, aber der ganze Zusammenhang geht mir dabei doch ab.
Es läuft wohl doch darauf hinaus, wenn ich JVEREIN nutzen will, muß ich auf SQL aufsetzen, um die Auswertungen so zu erhalten, wie ich sie mir vorstelle, der direkte Export von auswertungen aus JVerein ist leider so nicht brauchbar für mich.
Es muß nunmal für die Endanwender am Ende auf einfaches Knöpfchen drücken hinauslaufen, um die Auswertungslisten zu erhalten, die sie brauchen.
Also erstmal SQL lernen..... und dann sehen wir weiter.....
Nochmals danke für Deine Unterstützung.
Gruß
RWo