SQL Abfrage formatieren

lolocaust

Neuer Benutzer
Beiträge
3
Hallo Leute ich bräuchte eure Hilfe und zwar folgendes:

Ich frage eine Liste ab, die danach in ein DropDown Feld geladen wird die Liste schaut folgendermaßen aus:

111111111[LAND: Deutschland]
111111112[STADT: Berlin]
111111113[BEZ: BerlinerBezirk1]
111111114[BEZ: BerlinerBezirk2]
111111121[LAND: Österreich]
111111122[STADT: Wien]
111111123[BEZ: WienerBezirk1]
etc.

Was ich jetzt gerne hätte, damit das alles übersichtlicher wird sind, die eckigen Klammern und die Zahlen weg und dass je "tiefer" man geht desto weiter ist es eingerückt. Die Indikatoren für das einrücken wären LAND, STADT und BEZ (Ebene 1,2 und 3).

Ich hoffe ihr wisst was ich meine.

Wie könnte ich das Realisieren?
 
Werbung:

akretschmer

Datenbank-Guru
Beiträge
9.423
Hallo Leute ich bräuchte eure Hilfe und zwar folgendes:

Ich frage eine Liste ab, die danach in ein DropDown Feld geladen wird die Liste schaut folgendermaßen aus:

111111111[LAND: Deutschland]
111111112[STADT: Berlin]
111111113[BEZ: BerlinerBezirk1]
111111114[BEZ: BerlinerBezirk2]
111111121[LAND: Österreich]
111111122[STADT: Wien]
111111123[BEZ: WienerBezirk1]
etc.

Was ich jetzt gerne hätte, damit das alles übersichtlicher wird sind, die eckigen Klammern und die Zahlen weg und dass je "tiefer" man geht desto weiter ist es eingerückt. Die Indikatoren für das einrücken wären LAND, STADT und BEZ (Ebene 1,2 und 3).
Code:
test=*# select * from lolo ;
                t
---------------------------------
 111111111[LAND: Deutschland]
 111111112[STADT: Berlin]
 111111113[BEZ: BerlinerBezirk1]
 111111114[BEZ: BerlinerBezirk2]
(4 rows)

test=*# select case when t ~ 'LAND' then ' ' when t ~ 'STADT' then '  ' when t ~ 'BEZ' then '   ' end || trim(regexp_replace(t,'^.*: ',''),']') from lolo ;
      ?column?
--------------------
  Deutschland
   Berlin
    BerlinerBezirk1
    BerlinerBezirk2
(4 rows)


Ich hoffe ihr wisst was ich meine.

Nein, ich versteh nicht was Du da speicherst und warum.
 

lolocaust

Neuer Benutzer
Beiträge
3
Code:
test=*# select * from lolo ;
                t
---------------------------------
111111111[LAND: Deutschland]
111111112[STADT: Berlin]
111111113[BEZ: BerlinerBezirk1]
111111114[BEZ: BerlinerBezirk2]
(4 rows)
 
test=*# select case when t ~ 'LAND' then ' ' when t ~ 'STADT' then '  ' when t ~ 'BEZ' then '  ' end || trim(regexp_replace(t,'^.*: ',''),']') from lolo ;
      ?column?
--------------------
  Deutschland
  Berlin
    BerlinerBezirk1
    BerlinerBezirk2
(4 rows)




Nein, ich versteh nicht was Du da speicherst und warum.

Hallo, danke erstmal. Speichern tu ich es eh nicht, es soll von einer DB abgefragt werden und danach eben in einem Drop Down Feld angezeigt werden. Eigentlich genau so wie du das gemacht hast. Also scheinst du es verstanden zu haben. :D
Irgendwie will er aber den Tabulator bei mir nicht, sprich er will nicht reinrücken..
 

ukulele

Datenbank-Guru
Beiträge
4.582
Das sind keine Tabulatoren sondern Leerschritte. Manche Programme kürzen aber mehrere Leerschritte weg das wird sicher an deinem Tool oder deiner Oberfläche liegen.
 

lolocaust

Neuer Benutzer
Beiträge
3
Das sind keine Tabulatoren sondern Leerschritte. Manche Programme kürzen aber mehrere Leerschritte weg das wird sicher an deinem Tool oder deiner Oberfläche liegen.
Hallo, danke. Das habe ich (leider) schon herausgefunden. Kann ich das irgendwie umgehen? Ich wollte es mit CHAR(9) versuchen (anscheinend steht das für 1x Tab), aber das nützt auch nichts. Ich kann es ja auch mit Leerzeichen versuchen, aber wie du schon sagst, wird es weggekürzt. Kann ich ein Command mitgeben, was sagt, dass es nicht gekürzt wird?
 

akretschmer

Datenbank-Guru
Beiträge
9.423
Hallo, danke. Das habe ich (leider) schon herausgefunden. Kann ich das irgendwie umgehen? Ich wollte es mit CHAR(9) versuchen (anscheinend steht das für 1x Tab), aber das nützt auch nichts. Ich kann es ja auch mit Leerzeichen versuchen, aber wie du schon sagst, wird es weggekürzt. Kann ich ein Command mitgeben, was sagt, dass es nicht gekürzt wird?

Kommt drauf an, was da tut. Vermutlich ja PHP / HTML. Schau dort, wie man das macht.
 
Werbung:
Oben