Announcement

Collapse
No announcement yet.

TO_CHAR bei Firebird

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TO_CHAR bei Firebird

    Hallo,

    wenn ich das richtig sehe, gibt es die Funkton TO_CHAR bei Firebird nicht.

    Es geht darum, dass eine maximal 4-Stellige Zahl mit vorangestellten Nullen ergänzt werden soll, damit ein 4-stelliger String rauskommt.

    Wenn die Zahl 2 ist soll 0002 raus kommen,
    bei 20 -> 0020
    bei 200 -> 0200
    bei 2000 ->2000

    Der folgende Select erledigt die oben genannte aufgabe in Oracle:
    Code:
    SELECT DISTINCT to_char(floor( MPUNKT /100 ),'0000') FROM TEST;
    Wie könnte ich diesen Select für Firebird umschreiben?

    Mein erster Ansatz ist Folgender:
    Code:
    select distinct floor(cast(MPUNKT as integer)/100) from TEST;

  • #2
    sollte mit der UDF lpad() gehen

    Comment


    • #3
      Hallo,

      Firebird 2.1 bietet eine Built-In Funktion LPAD( <string>, <number>[, <string> ] ) an. Bei älteren Versionen, muss wie Markus erwähnt hat, auf eine UDF zurückgegriffen werden. Diese muss dann allerdings erst in der Datenbank bekannt gemacht werden. Siehe dazu ib_udf.sql im UDF Unterverzeichnis der Firebird Installation.

      Thomas
      Thomas Steinmaurer

      Firebird Foundation Committee Member
      Upscene Productions - Database Tools for Developers
      Mein Blog

      Comment

      Working...
      X