Hallo
ich habe eine Tabelle mit folgenden Textfeldern : Jahr , Monat , Ort. Die Werte wurden aus einer CSV-Stuktur des Windowsverzeichnis erstellt. Dadurch sind alle Werte mehrfach vorhanden. Wie kann ich folgendes umsetzen :
- Abfrage für einen Ort -> Anzeige jeder Ort erscheint nur einmal -> SELECT DISTINCT `ort` FROM `bilder1` WHERE 1 -> OK
- das Ergebnis wird im Formular in einer Tabelle angezeigt
- danach möchte ich für die Orte die Monate angezeigt bekommen aber jeden Ort nur einmal -> ???
- danach sollen die Jahre ´gefiltert werden als Kriterium gelten die gefundenen Monate
Zweck ist das ich meine Bilder ( welche schon geordnet auf der Festplatte liegen ) schneller finden kann. Es in DB noch weitere Spalten vorhanden ( Anlass[Geburtstag,Urlaub,Ausflug …; Bildpfad; Bildname; Aufnahmedatum]
Kann mir bitte jemand einen Vorschlag geben.
Danke im voraus.
Gruß Roland
🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱
🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Abfrage für Mysql-DB
-
- Beiträge: 43
- Registriert: Di 20. Jan 2015, 18:56
- Wohnort: Hungen
Re: Abfrage für Mysql-DB
Hallo,
wenn die Antworttabelle nur die Spalte 'Ort' enthält, liefert die DISTINCT-Klausel keine Duplikate für 'Ort', d.h. jeder Ort erscheint nur einmal.
Eine Abfrage mit 'Ort' und 'Monat' (z.B. SELECT DISTINCT `ort`, `monat` FROM `bilder1` WHERE 1 ) liefert alle möglichen Kombinationen für Ort und Monat, aber diese ohne Duplikate (d.h. nur einmal, auch wenn es Einträge für den gleichen Ort und Monat für mehrere Jahre gibt).
Dabei dürfen nur Ort und Monat selektiert werden; nimmt man noch Jahr hinzu, werden alle möglichen Kombinationen aus den drei genannten Spalten angezeigt.
Der Vorschlag wäre:
Aus der Ortsliste eine Ort auswählen und diesen als Kriterium in eine Abfrage einbauen:
(z.B. LO-Parameterabfrage SELECT DISTINCT `ort`, `monat` FROM `bilder1` WHERE `ort` = :Ort)
oder z.B. in einem Formular:
Die Ortsabfrage als Datenquelle für ein Listen- oder Kombofeld (Ortsliste) verwenden und mit dem gewählten Ort die weiteren Daten filtern; analog kann mit der Monats- und Jahresabfrage weiter gefiltert werden. Zu beachten ist
Grüße bmk
wenn die Antworttabelle nur die Spalte 'Ort' enthält, liefert die DISTINCT-Klausel keine Duplikate für 'Ort', d.h. jeder Ort erscheint nur einmal.
Eine Abfrage mit 'Ort' und 'Monat' (z.B. SELECT DISTINCT `ort`, `monat` FROM `bilder1` WHERE 1 ) liefert alle möglichen Kombinationen für Ort und Monat, aber diese ohne Duplikate (d.h. nur einmal, auch wenn es Einträge für den gleichen Ort und Monat für mehrere Jahre gibt).
Dabei dürfen nur Ort und Monat selektiert werden; nimmt man noch Jahr hinzu, werden alle möglichen Kombinationen aus den drei genannten Spalten angezeigt.
Der Vorschlag wäre:
Aus der Ortsliste eine Ort auswählen und diesen als Kriterium in eine Abfrage einbauen:
(z.B. LO-Parameterabfrage SELECT DISTINCT `ort`, `monat` FROM `bilder1` WHERE `ort` = :Ort)
oder z.B. in einem Formular:
Die Ortsabfrage als Datenquelle für ein Listen- oder Kombofeld (Ortsliste) verwenden und mit dem gewählten Ort die weiteren Daten filtern; analog kann mit der Monats- und Jahresabfrage weiter gefiltert werden. Zu beachten ist
Grüße bmk
-
- Beiträge: 43
- Registriert: Di 20. Jan 2015, 18:56
- Wohnort: Hungen
Re: Abfrage für Mysql-DB
Hallo bmk
Danke für die Infos. Ich habe sie für mich angepasst und getestet funktioniert. Da ich aber mehr Möglichkeiten in den Abfragen benötige muss ich wohl dir Abfrage über Makros machen wo der Abfragestring immer entsprechend formuliert wird. Aber Dein Ansatz hat mir einen Lösungsweg aufgezeigt. Wenn ich nochmal ein Problem habe melde ich mich wieder.
Grüße Chemnitzer
Danke für die Infos. Ich habe sie für mich angepasst und getestet funktioniert. Da ich aber mehr Möglichkeiten in den Abfragen benötige muss ich wohl dir Abfrage über Makros machen wo der Abfragestring immer entsprechend formuliert wird. Aber Dein Ansatz hat mir einen Lösungsweg aufgezeigt. Wenn ich nochmal ein Problem habe melde ich mich wieder.
Grüße Chemnitzer
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.