AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken SQL Ziffer in Buchstabe umwandeln
Thema durchsuchen
Ansicht
Themen-Optionen

SQL Ziffer in Buchstabe umwandeln

Ein Thema von Jumpy · begonnen am 6. Nov 2013 · letzter Beitrag vom 6. Nov 2013
Antwort Antwort
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.736 Beiträge
 
Delphi 6 Enterprise
 
#1

SQL Ziffer in Buchstabe umwandeln

  Alt 6. Nov 2013, 10:12
Datenbank: Oralcle • Version: 11g • Zugriff über: ODBC->ADO
Hallo,

ich muss in einem aus Ziffern bestehenden String, die erste Ziffer in den entsprechenden Buchstaben des Alphabets umwandeln. Nachdem ich da erst mit lauter geschachtelten decodes und cases rumgeeiert habe, hab ich nun eine nette Variante gefunden:

Code:
TRANSLATE(SUBSTR('0200',1,1),'0123456789','ABCDEFGHIJ')||SUBSTR('0200',2)
Macht z.B. aus '0200' -> 'A200'

Eigentlich bin ich damit ganz zufrieden (vor allem im Vergleich zu meinen ersten Versuchen dazu) aber ich wollte trotzdem nachfragen, ob es ggf. noch einfacher geht, vllt. mit einer Oracle-Funktion, die ich nicht kenne, oder so.
Das muss aber im SQL-Statement passieren, d.h. ich kann keine Stored Procedure dafür schreiben, und das Ganze nachher in Delphi in der Ergebnismenge zu machen, scheint mir eh am unelegantesten.
Ralph
  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 Ziffer in Buchstabe umwandeln

  Alt 6. Nov 2013, 12:23
Mir gefällt Deine Lösung, obwohl ich decode bevorzuge
aber
Code:
decode(substr(xx,1,1),'0','A','1','B'...,'notausgang')||substr(xx,2255)
ist auch nicht viel schöner, hat allerdings den Vorteil wenn die erste Stelle mal keine Ziffer ist, daß der Notausgang besteht.

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

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.736 Beiträge
 
Delphi 6 Enterprise
 
#3

AW: SQL Ziffer in Buchstabe umwandeln

  Alt 6. Nov 2013, 14:26
Ich kann davon ausgehen, dass da nur Ziffern drin stehen (berühmte letzte Worte, ich weiß) drum funktioniert auch das Folgende dank automatischem Casten:

Code:
CHR(SUBSTR('0200',1,1)+65)||SUBSTR('0200',2)
Ist sogar noch weniger zu schreiben
Ralph
  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 05:11 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