AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken SQL: VorMonat ermitteln bringt im Dezember und November falsche Werte
Thema durchsuchen
Ansicht
Themen-Optionen

SQL: VorMonat ermitteln bringt im Dezember und November falsche Werte

Ein Thema von juergen · begonnen am 24. Mär 2016 · letzter Beitrag vom 24. Mär 2016
Antwort Antwort
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.175 Beiträge
 
Delphi 11 Alexandria
 
#1

SQL: VorMonat ermitteln bringt im Dezember und November falsche Werte

  Alt 24. Mär 2016, 22:13
Datenbank: Pervasive • Version: V10 • Zugriff über: PDAC
Hallo zusammen,

Pervasive bietet von Hause aus keine umfangreichen Funktionen um den Vormonat zu ermitteln.
Ausgehend vom PC-Datum brauche ich den Vormonat als 2-stelliges string-Ergebnis.
Folgendes habe ich mir ausgedacht:

Code:
select if (Month(Current_Date()) = 1, '12', Right ('0' + cast(Month(Current_Date())-1 as Char),2)) as VorMonat
Beim testen ist mir nun aufgefallen, dass wenn das PC Datum auf Dezember oder November steht ich als Ergebnis "01" erhalte, alle anderen Monate liefern mir den richtigen Vormonat vom PC-Datum.
Warum das nur beim Dezember und November nicht klappt, ich habe keine Ahnung warum.

Gibt es dafür eine Erklärung?
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: SQL: VorMonat ermitteln bringt im Dezember und November falsche Werte

  Alt 24. Mär 2016, 22:41
was bedeutet
Code:
 Right ()
und
Code:
Char
meint wirklich einen String und keinen Char?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.175 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: SQL: VorMonat ermitteln bringt im Dezember und November falsche Werte

  Alt 24. Mär 2016, 22:47
@p80286,

das Problem lag am Char. Es muss Varchar sein!
So funktioniert es nun auch:

Code:
select if (Month(Current_Date()) = 1, '12', Right ('0' + cast(Month(Current_Date())-1 as varchar(2)),2)) as VorMonat
Danke für deine Antwort.
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz