BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Geburtstagliste aus postgresql-Abfrage

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Antworten
mc23646266
Beiträge: 2
Registriert: Mo 30. Jan 2012, 20:58

Geburtstagliste aus postgresql-Abfrage

Beitrag von mc23646266 » Mo 30. Jan 2012, 21:22

Wir probieren eine schöne Geburtstagliste aus einer lesenden Postgresql Abfrage zu schreiben.

Leider verstehe ich die Lösung noch nicht? Kann jemand helfen? Das Problem:
Das Datum aus der DB ist kein SQL Date oder Timestamp. Im Zwischenergebnis kann ich das Geburtsdatum als TT und den Monat als MM formatieren. Nun schaffe ich es nicht, den Bericht nach Monat, Tag, Name zu sortieren.

Der finale Bericht sollte halt alle Geburtstage im Januar, nach Tagen sortiert ausgeben. Dann die weiteren Monate mit ihren Geburtstagen.

Im Bericht "rechne" ich schon MONTH([Geburtstag]) ... aber im Bericht scheint der Monat immer nach dem zugrundeliegenden ursprünglichen Tabellenwert sortiert zu werden? Kann man das lösen?

Nachdem ich es nicht mit 3.4.5 geschafft habe, bin ich jetzt mit LibreOffice 3.5 am Mac unter 10.7.2 unterwegs. Der native postgresql treiber ist wirklich schnell und ich habe alle Daten im Bericht. Wie bekommt man die Sortierung hin?

=:-)f

F3K Total
Beiträge: 2411
Registriert: So 10. Apr 2011, 10:10

Re: Geburtstagliste aus postgresql-Abfrage

Beitrag von F3K Total » Di 31. Jan 2012, 06:19

Hi,
ich weiß nicht genau wie das Statement unter der Syntax deiner DB aussieht, in der embeddet HSQLDB kann man Text in Date so zurückführen, und dann ganz gewöhnlich behandeln:

Code: Alles auswählen

SELECT "ID", "NACHNAME", "VORNAME", convert(substring("Birthday",7,4)||'-'||substring("Birthday",4,2)||'-'||substring("Birthday",1,2),date) as "Birthday" FROM "Tabelle1" where monthname("Birthday")='January' order by "Birthday"
Gruß R
Windows 10: AOO, LO Linux Mint: AOO, LO

mc23646266
Beiträge: 2
Registriert: Mo 30. Jan 2012, 20:58

Re: Geburtstagliste aus postgresql-Abfrage

Beitrag von mc23646266 » Mi 1. Feb 2012, 12:20

Vielen Dank für den Hinweis, aber leider habe ich das Datum als Integer-Zahl vorliegen. Also so ein Datum, wie es in Excel unformatiert vorliegt. Das ging wohl aus meiner ursprünglichen Frage nicht eindeutig hervor.

z.B. Gebdatumzahl = 23279. # = DB-Wert - 2415018, lässt sich in Calc als TT.MM.JJJJ formatieren

Bislang verweigern sich alle 'casts', 'to_char' usw. Damit ich in Excel/Calc das Datumsformat anwenden kann ziehe ich 2415018 vom Wert (aus der DB) ab und formatiere als Datum mit TT.MM.JJJJ. Das geht in Excel und im Bericht, aber in den Zellen bleiben ja die INT Werte drin und die Sortierung nach Monaten und Tagen bekomme ich so nicht hin.

Derzeit hab ich mir die Tabelle mit drei Spalten für das Gebdatum gebaut und zeige das Gebdatum in den Spalten als TT.MM.JJJJ, TT und MM an. Die Sortierung wünche ich mir nach MM, TT, Name.

=:-)f

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten