| |
VB & DatenbankenDAO-Datenbank - Verschiedene Werte eines Datenfeldes zählen | | | Autor: V A T | Datum: 14.01.23 13:27 |
| Hallo,
nachdem ich im letzten Thema diese Query-Funktion (kannte ich bisher noch nicht) kennen gelernt habe, stellt sich mir die Frage, ob man damit auch folgendes Problem einfach lösen könnte:
Ich habe beispielsweise eine Datenbank mit 3 Feldern und 1000 Datensätzen.
Im zweiten Feld (Feld2) steht pro Datensatz ein Buchstabe (A-Z), im dritten Feld (Feld3) ein Wert.
Nun möchte ich wissen, wie viele [u]unterschiedliche(!) Buchstaben es in Feld2 gibt, allerdings nur berücksichtigt, wenn in Feld 3 ein Wert größer 0 steht.
Mit meinem bisherigen Kenntnissen kann ich nur eine Abfrage schreiben, die mir alle Datensätze, bei denen in Feld3 ein Wert größer 0 steht, in ein Array einliest. Und im Array anschließend mühsam per Schleifen die Buchstabeninhalte in Feld2 auswerten.
Gibt es da eine einfachere Lösung, um die Berechnung zu vollziehen und als Ergebniswert die Zahl zu haben, wie viele [u]unterschiedliche(!) Buchstaben es in Feld2 gibt, wenn in Feld 3 ein Wert größer 0 steht?
Gruß
V A T
Vielen Dank an alle in diesem Forum, welche mir Ihre Zeit schenken und sich mit meinen Problemen befassen! Ich weiß das ernsthaft zu schätzen und danke allen, die sich mit dieser Frage befassen herzlich!!! | |
Re: DAO-Datenbank - Verschiedene Werte eines Datenfeldes zählen | | | Autor: emaNoN | Datum: 14.01.23 16:58 |
| Das Einfachste dürfte sein:
Du erzeugst dir erstmal einen neuen View (Abfrage):
Ich nenn' das 'mal „Abfrage1“.
SELECT [Feld2]
FROM [Tabelle1]
GROUP BY [Feld3], [Feld2]
HAVING [Feld3]>0
Dann brauchst du nur noch
SELECT COUNT([Feld2])
FROM [Abfrage1]
P.S.:
Besorg dir mal ein vernünftiges DB-Tool wie z. B. https://fishcodelib.com/database.htm, ist kostenlos und erspart dir das umständliche Programmieren unter VB6 wenn du nur SQL-Code testen möchtest.
Beitrag wurde zuletzt am 14.01.23 um 17:10:11 editiert. | |
Re: DAO-Datenbank - Verschiedene Werte eines Datenfeldes zählen | | | Autor: emaNoN | Datum: 15.01.23 09:31 |
| Mir ist da ein kleiner Fehler unterlaufen.
Du erstellst zwei Views:
1. Abfrage1
SELECT Feld2
FROM Tabelle1
WHERE Feld3 > 0;
2. Abfrage2
SELECT Feld2
FROM Abfrage1
GROUP BY Feld2;
und dann:
SELECT COUNT(Feld2)
AS SUMME
FROM Abfrage2 | |
Re: DAO-Datenbank - Verschiedene Werte eines Datenfeldes zählen | | | Autor: V A T | Datum: 15.01.23 16:15 |
| Hallo,
erst nochmal wirklich danke, dass du mich unterstützt!!!
Erstmal zum Hintergrund: Ich benötige die SQL-Abfragen ausschließlich für VB6-Programme, in denen ich Daten verarbeite, die in Access-Datenbanken hinterlegt sind. Will heißen, ich will VB6 gar nicht umgehen, sondern VB6 ist das Ziel...
Kannst du mir deshalb sagen, wie ich die beiden Abfragen von dir in meinen Code bringe?! Bisher habe ich ja nur eine Query-Abfrage umgesetzt. Die hatte aber nur eine Abfrage, nicht zwei...
'QUERY-Abfrage und Aktion definieren
SQL = "UPDATE TAB1 SET Feld1 = 0"
Set QUERY = DB.CreateQueryDef("", SQL)
QUERY.Execute
QUERY.Close
Set QUERY = Nothing Gruß
V A T
Vielen Dank an alle in diesem Forum, welche mir Ihre Zeit schenken und sich mit meinen Problemen befassen! Ich weiß das ernsthaft zu schätzen und danke allen, die sich mit dieser Frage befassen herzlich!!! | |
Re: DAO-Datenbank - Verschiedene Werte eines Datenfeldes zählen | | | Autor: emaNoN | Datum: 16.01.23 01:05 |
| Daher mein Tipp mit dem DB-Tool. Damit (oder in Access) erstellst du die beiden Views (Abfragen) in deiner DB. In deinem VB6-Code führst du dann nur noch
SELECT COUNT(Feld2)
FROM Abfrage2
aus.
So sieht deine DB dann aus:
In deinem VB-Code machst du den SELECT COUNT... und bekommst genau einen Datensatz zurück.
Beitrag wurde zuletzt am 16.01.23 um 01:40:20 editiert. | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
Neu! sevPopUp 2.0
Dynamische Kontextmenüs!
Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Weitere InfosTipp des Monats TOP Entwickler-Paket
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR...
Jetzt nur 599,00 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|