Seite 1 von 1

DATEDIFF - Syntax?

Verfasst: So 29. Mär 2026, 17:48
von jokl55
Ich schreibe gerade meine Arbeitszeitendatenbank von MS Access auf LOBase um.
(Debian 13 Trixie mit KDE Plasma)

Bei folgendem Problem bleibe ich hängen:

Ich habe in einer Tabelle Spalten mit Datum, bis zu 6 Uhrzeitdaten (3* von.. - bis.. Format Zeit) und der berechneten Stundensumme als Differenz aus diesen Zeiten in einer Spalte, Format DOUBLE.
Wenn ich diese Tabelle jetzt weiterführen möchte, dann sollte irgendwie die Differenz aus den dann neu angegebenen Uhrzeitdaten berechnet werden. Das möchte ich in einer Abfrage lösen entweder in der Spalte, in der bisher schon die Differenz berechnet ist (SUMME, Format Double) oder meinetwegen in einer neuen Spalte (anzh_d, Format Double).

In der Abfrage versuche ich den Befehl DATEDIFF zu verwenden und gebe folgendes an:

Code: Alles auswählen

SELECT 
	  "ID"
	, "Datum"
	, "Vo_beginn"
	, "Vo_ende"
	, "Summe"
	,datediff(hh,’Vo_ende’,’Vo_beginn’) as "anzh_d" FROM "tbl_zeiten"
und bekomme die Fehlermeldung:

Code: Alles auswählen

Column not found: hh in statement [SELECT "ID", "Datum", "Vo_beginn", "Vo_ende", "Summe", DATEDIFF( "hh", "’Vo_ende’", "’Va_beginn’" ) AS "anzh_d" FROM "tbl_zeiten"]
Ich vestehe das so, dass die Formatangabe hh als Spaltenangabe mißverstanden wird, mit der Formatangabe "Stunden" und auch mit dem Format der Apostrophe habe ich weiß ich wie oft herumprobiert, ich komme da auf keine grünen Zweig.

Was mache ich falsch?

Re: DATEDIFF - Syntax?

Verfasst: So 29. Mär 2026, 19:08
von RobertG
Base ist ja nur die Benutzeroberfläche.
Ich vermute einmal, dass Du die interne HSQLDB als Datenbank meinst.

Code: Alles auswählen

,datediff('hh',"Vo_beginn","Vo_ende") as "anzh_d" FROM "tbl_zeiten"
So bekommst Du aber nur die glatte Zahl an Stunden raus.
Lade Dir einfach das Base-Handbuch von der LibreOffice-Seite oder von meiner Homepage herunter.