![]() |
Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Mir viel kein wirklicher Titel ein, also hab ich jetzt mal den gewählt..
Und zwar habe ich bereits aus einer Tabelle bestimmte Daten abgerufen. Nun möchte ich ohne viel Aufwand einen weiteren String einbringen, der mir bsw. auszählt, wie oft in den bereits vorhandenen Daten Einträge für 'Query1.FieldByName('KLASSEN').AsString' vorhanden sind. Also bspw.:
SQL-Code:
Wie mache ich das?
SELECT COUNT(*) FROM VT06_07.dbf WHERE KLASSEN='+Query1.FieldByName('KLASSEN').AsString+'
|
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Ein join könnte helfen.
|
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Delphi-Quellcode:
Resultat: Ungültiges Schlüsselwort 'Join'..
Query1.Close;
Query1.SQL.Add('JOIN SELECT COUNT(*) FROM '+sj+' WHERE KLASSEN='+Query1.FieldByName('KLASSEN').AsString); Query1.Open; |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Du hast mich falsch verstanden und ich verstehe auch nicht, was du genau brauchst. Willst du eine 2. Abfrage machen oder die 1. erweitern?
|
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Höhö..anscheinend dann wohl. ^^
Also: Query1 liest die aktuellen Vertretungen für den heutigen Tag aus. Nun möchte ich, dass innerhalb der Schleife, in der der Code für die HTML-Datei geschrieben wird und die ausgelesenen Zeilen abgegangen werden, jeweils bei den Klassen geprüft wird, wie viele Einträge für diese an dem Tag vorhanden sind. Ich brauche das nämlich für Änderungen am Plan (die erste Vertretungszeile der Klasse soll den rowspan-Wert erhalten, wie viele Einträge gegeben sind, damit ich die Einträge 'gruppieren' kann im Plan). |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Da hast du 2 Möglichkeiten:
1. Wie du es versucht hat, aber mit einer anderen Instanz vom Query: 2. in einer Abfrage als Join. |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
zu 1.) Wie meinst du das? Nen neuen Query?
zu 2) Ich kannte bisher nur die "LEFT JOIN"-Variente. Aber das kennt der ja nicht. |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
zu 1.) Query2
zu 2.) Join ist allgemein, je nach gewünschten Ergebnis ist halt ein inner, left outer, right outer, full, equi das richtige. Was meinst du mit kann er nicht? BTW. geht es um dBase oder MySQL? |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Lass dir folgende Abfrage doch mal in einem DBGrid anzeigen.
Ich vermute, das sind die Daten, die dich interessieren
SQL-Code:
Ansonsten: erkläre
SELECT COUNT(*) AS Anzahl, KLASSEN FROM VT06_07.dbf
1.) wie viele Tabellen du hast und wie diese heisen 2.) welchen Felder in diesen Tabellen sind 3.) wie dein Ergebnis aussehen soll anhand eines Beispiels |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
@ mkinzler: Oh, ähm, dBase natürlich. Sry, hab vergessen zu erwähnen.
OK, das wär mittlerweile schon etwas mehr als Query2...:D Ja, er kennt den Befehl einfach nicht. 'Ungültiges Schlüsselwort'. BDE halt mal wieder. Hatte letztes mal eine andere Methode ausprobiert, war aber.. 1. zu blöd es zu installieren :D 2. hab ich danach gemerkt, dass es Shareware ist. :/ @shmia: zu 1) Nur eine: VT06_07.dbf zu 2)
![]() So soll er aussehen (Farben erstmal nur zur Kenntlichkeit geändert): ![]() |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Zitat:
SQL-Code:
select
t1.DATUM, t1.KLASSEN, t1.S, t1.WER, t1.FUER, t1.RAUM, t1.FACH, t1.BEMER_SCH, t1.WERT, t1.ANZAHL, (select count(*) from VT06_07 t2 where t2.klassen = t1.klassen) as anz from VT06_07 t1; |
Re: Zusätzliche MySQL-Abfrage über bestimmte Daten aus Tabel
Jetzt bekomm ich leider die Fehlermeldung 'Ungültiges Schlüsselwort Symbol-String: '.
Delphi-Quellcode:
Query9.Close;
Query9.SQL.Text := 'SELECT t1.DATUM,t1.KLASSEN,t1.S,t1.WER,t1.FUER,t1.RAUM,t1.FACH,t1.BEMER_SCH,t1.WERT, t1.ANZAHL, (SELECT COUNT(*) FROM VT'+sj+ ' t2 WHERE t2.klassen = t1.klassen) AS anz"'; Query9.SQL.Add('FROM VT'+sj+' t1;'); Query9.Open; |
Re: Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Wo kommt der Fehler genau?
|
Re: Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Nachdem er Query9.SQL.Add('FROM VT'+sj+' t1;'); überschreiten soll.
|
Re: Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Hallo Sven,
wenn du Fehler mit einem SQL-Statement hast, dann holst du dir besser das Statement über das Überwachungsfenster der IDE und führst es mal im Database-Desktop aus, solange bis es ausgetestet ist. Und nimm mal das Semikolon aus dem Statement heraus. Grüße vom marabu |
Re: Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Ehrlich gesagt stecke ich grad mal vollkommen fest..ich komm weder vor, noch zurück. :/
|
Re: Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Inwiefern?
|
Re: Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Insofern, dass ich keine ordentliche Abfrage hinbekomme oO
Iein Fehler wird mir immer gemeldet, egal was ich mache. Mittlerweile will er sogar Felder haben, die.. 1. gar nicht existieren 2. in der Abfrage nirgendswo drin vorkommen :wall: |
Re: Zusätzliche SQL-Abfrage über bestimmte Daten aus Tabelle
Delphi-Quellcode:
Lass dir mal den Inhalt von Query9.SQL.Text anzeigen
Query9.SQL.Text := 'SELECT t1.DATUM,t1.KLASSEN,t1.S,t1.WER,t1.FUER,t1.RAUM,t1.FACH,t1.BEMER_SCH,t1.WERT, t1.ANZAHL, (SELECT COUNT(*) FROM VT'+sj+ ' t2 WHERE t2.klassen = t1.klassen) AS anz';
Query9.SQL.Add(' FROM VT'+sj+' t1;'); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:34 Uhr. |
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-2025 by Thomas Breitkreuz