Seite 1 von 1

[Gelöst] SQL-Abfrage Datum Datumsformat wie?

Verfasst: Sa 7. Jul 2018, 18:14
von Pit Zyclade
Hallo,
Ich benutze selten SQL und selten erstelle ich neue Abfragen.
Nun wollte ich mir mal die Arbeit erleichtern und habe eine vorhandene Abfrage in SQL kopiert, bearbeitet und gesichert.
Leider stelle ich fest, dass ich Datumsfelder zwar abfrage, aber nie in einem Datumsformat angezeigt bekomme. Mit anderen Abfragen derselben Datenbank hingegen klappt das aber.
z.B. SELECT "Datum" "Datum" , ...

Wie erzwinge ich bei einer Abfrage in SQL das Format Datum 6+2 oder 8+2 Stellen eines Datumsfeldes?
Danke für Anregung oder Hilfe!

Re: SQL-Abfrage Datum Datumsformat wie?

Verfasst: Sa 7. Jul 2018, 18:25
von Pit Zyclade
Habe eine Lösung hinbekommen: Die zugrundeliegende Datenbank bearbeitet und dort die Anzeige der Datumsfelder das Format erzwungen.
Nun werden die neuen Abfragen auch wie gewünscht angezeigt.
Aber warum die alten Abfragen ohne diesen Vorgang korrekt angezeigt wurden, will mir noch nicht einleuchten.
Es werden offenbar Eigenchaften übernommen, ohne dass in der SQL-Sprache etwas sichtbar ist.
Meine Eingangsfrage bleibt also bestehen: Kann man in der SQL-Abfrage das Anzeigeformat erzwingen?

Re: SQL-Abfrage Datum Datumsformat wie?

Verfasst: Sa 7. Jul 2018, 19:40
von RobertG
Hallo Pit,

das Format eines Datums ist keine Frage des SQL-Codes sondern eine Frage der grafischen Benutzeroberfläche. Du kannst das Format für Tabellen vorwählen. Was in Tabellen als Format gespeichert wurde bleibt auch erhalten. Das gilt auch für Felder in Abfragen, die nicht weiter mit Funktionen bearbeitet wurden.

In Abfragen lässt sich das Format zwar über die GUI einstellen, leider aber nicht dauerhaft speichern.

Ansonsten: Formulare sind die Elemente, die eigentlich zum täglichen Umgang mit der Datenbank gedacht sind. Und bei Formularen wird natürlich auch wieder das Format dauerhaft gespeichert.

Willst Du eine bestimmte Anzeige in einer Abfrage erzwingen, dann geht das, indem Du das Datum in seine Bestandteile zerlegst:

Code: Alles auswählen

 SELECT 
 RIGHT( '0'||DAY( "Datum" ), 2 )||'.'||
 RIGHT( '0'|| MONTH( "Datum" ), 2 )||'.'|| 
 YEAR( "Datum" ) 
 AS "DatumFormatiert" FROM "Tabelle"
Das Datum wird so in einen Text umgewandelt. Der Tag wird zweistellig dargestellt, der Monat auch. Das Jahr ist vierstellig. Willst Du das nur zweistellig haben, so kannst Du das mit RIGHT(YEAR("Datum"),2) natürlich auch erreichen.

Gruß

Robert

[Gelöst] Re: SQL-Abfrage Datum Datumsformat wie?

Verfasst: So 8. Jul 2018, 10:14
von Pit Zyclade
Genau das suchte ich!
DANKE