Jahr aus Datum ermitteln

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Jahr aus Datum ermitteln

von eric » Do, 30.03.2006 07:51

Hallo Peter,
ich habe Gestern noch weiter probiert, letztlich hat es dann auch mit der Version 2.0.2 funktioniert. Ich hatte im Modus bearbeiten die Abfrage ausgeführt und dabei kein Ergebnis erhalten. Erst nachdem ich den Modus verlassen hatte und per Doppelklick die Ansicht öffnete erhielt ich ein Ergebnis. Anschließend war die Spalte auch im Modus Bearbeiten gefüllt. In der Version 2.0.1 erhielt ich bei gleicher Vorgehensweise gar keine Ergebnisse. Fehler zwischen Rücklehne und Tastatur? Wie auch immer, bei ein ganzes Stück weiter und möchte mich vielfalls für deine Hilfe und Gedult bedanken.

Gruß Eric

von pmoegenb » Mi, 29.03.2006 13:54

Hallo Eric,

ich habe mittels Excel eine csv-Datei angelegt. Der Inhalt sieht wie folgt aus:
  • Vorname;Nachname;Geburtsdatum
    Peter;Gunman;19.08.1922
    Carola;Weißnicht;15.11.1923
Nach der Anmeldung bei OO als CSV-Datenquelle startete ich diese Abfrage:

Code: Alles auswählen

SELECT "Nachname", "Vorname", YEAR( "Geburtsdatum" ) AS "Jahr" FROM "Geburtstage" "Geburtstage" ORDER BY "Nachname" ASC, "Vorname" ASC
Das Ergebnis war:
  • 1922 Gunman Peter
    1923 Weißnicht Carola
Es geht also auch mit csv-Dateien.

von eric » Mi, 29.03.2006 12:11

Hallo Peter,
vielen Dank für die Unterstützung.
Werde heute Abend weiter probieren. Wenn es bei dir funktioniert hat und wird sich ein Weg finden.

Gruß Eric

von pmoegenb » Mi, 29.03.2006 11:43

Hallo Eric,

ich kann nichts Falsches erkennen. Weshalb das bei einer csv-Datei nicht funktionieren soll ist mir nicht klar.

Wenn ich etwas mehr Zeit habe, werde ich das bei einer csv-Datei mal testen.

von eric » Mi, 29.03.2006 11:26

Hallo Peter,
ich habe den Tabellennamen angegeben.
Hier das vollstänige SELECT Statement, ist ja kein Geheimnis
SELECT "Anrede", "Vorname", "Nachname", "Geburtstag", YEAR( "Geburtstag" ) AS "Jahr" FROM "spg" "spg"
Das Format der Spalte Geburtstag wird als Datum erkannt, das der Spalte Jahr als Zahl.
Ist die Syntax des Statements so OK?

Gruß Eric

von pmoegenb » Mi, 29.03.2006 10:35

Hallo Eric,

es ist so wie ich vermutet habe, mit der odb-Datei hast Du lediglich eine Verbindung zur csv-Datei hergestellt, damit sie als Datenquelle benutzt werden kann.

Ich habe die Abfrage an einer txt-Datei getestet. Dabei wird das entsprechende Datumsfeld in der Datenquellen-Ansicht ebenfalls als Datumsfeld erkannt (rechte Mausstaste auf Spaltenkopf, Option Spaltenformatierung). Die Abfrage funktioniert. Dasselbe müsste deshalb auch bei einer CSV-Datei funktionieren.

Hast Du bei der From Klausel den Datenbanknamen oder Tabellennamen angegeben. Angegeben werden muss der Name der Tabelle.

von eric » Mi, 29.03.2006 09:53

Hallo Peter,
ich habe im OO-Writer die Funktion "Einfügen/Feld/andere//Datenbank//Datenbank hinzufügen" gewählt und dabei das csv-File als Datenbank Quelle angegeben. Änderungen des csv-Files haben unmittelbare Auswirkungen auf die Darstellung der Datenbank. Für mein Verständnis stellt das ebenfalls erzeugte odb-File soetwas wie die Verwaltungshülle um das csv-File dar. Ist dem so? OO-Base stellt diese Spalte in einem Datumsformat dar. Insfoern die Frage wie Spalten mit Inhalten wie einem Datum interpretiert werden? Ich hätte nun vermutet, dass über eine Datums- oder eine Stringoperation eine ergänzende Spalte zu füllen sei. Falsch gedacht?

Gruß Eric

von pmoegenb » Mi, 29.03.2006 08:48

eric hat geschrieben:Hallo Peter,
vielen Dank für die Hilfe.
Hatte ich auch probiert, jedoch mit dem gleichen Ergebnis. Es wird kein Inhalt angezeigt. Offenbar werden weder String- noch Datumsoperationen ausgeführt, obwohl kein Fehler gemeldet wird. Mir ist noch nicht klar in welchem Format die Felder beim Import des csv-Files verwaltet werden.
Schade.
Hallo Eric,

wie wurde die csv-File importiert. Viele sind der Ansicht, dass wenn sie eine csv-Datei oder txt-Datei als Datenquelle angemeldet haben und daraus eine odb-Datei resultiert, dass die Datensätze importiert wurden.

Dem ist allerdings nicht so, es wurde lediglich eine Verbindungsbeschreibung zur csv- oder txt-Datei hergestellt.

Wenn der Import tatsächlich in eine HSQLDB-Datenbank erfolgt ist, müsste auch die von mir formulierte Abfrage funktionieren außer, beim Feld Datum handelt es sich um keine Datumsfeld.

von eric » Mi, 29.03.2006 08:15

Hallo Peter,
vielen Dank für die Hilfe.
Hatte ich auch probiert, jedoch mit dem gleichen Ergebnis. Es wird kein Inhalt angezeigt. Offenbar werden weder String- noch Datumsoperationen ausgeführt, obwohl kein Fehler gemeldet wird. Mir ist noch nicht klar in welchem Format die Felder beim Import des csv-Files verwaltet werden.
Schade.

Gruß Eric

von pmoegenb » Di, 28.03.2006 15:35

Hallo Eric,

probier mal folgendes:

Code: Alles auswählen

SELECT "Datum", Year("Datum") AS "Jahr" FROM "spg" "spg" 

Jahr aus Datum ermitteln

von eric » Di, 28.03.2006 12:14

Hallo,
ich möchte aus einer csv-basierten Datenbank, die u.a. eine Spalte Datum im Format tt.mm.jjjj enthält, zum einem das Jahr dieses Eintrages ermitteln und in einer sparaten Spalten darstellen. Zum Anderen möchte ich die Differenz zum aktuellen Jahr in einer Spalter darstellen.
Ich ein SELECT Statement für den ersten Teilschritt zusammengestellt, erhalte aber leider keine Inhalte.
SELECT "Datum", RIGHT ( "Datum", 4 ) AS "Jahr" FROM "spg" "spg"
Hat Jemand eine Idee?
Freue mich über eine Hilfe.

Gruß Eric

Nach oben