Hallo zusammen,
erst mal von mir ein Hallo:
Ich bin neu hier und beschäftige mich seit ein paar Wochen mit PostreSQL und bekomme auch schon die ersten Abfragen erfolgreich hin.
Ich nutze den pgAdmin umd eine Abfrage von unserem SQL Server zu erstellen, welche dann in VBA Code oder Excel-Dateien weiter verwendet wird.
Bis jetzt war es in der ersten Linie einfache Abfragen mit Select, und where usw.
Bei meinem Problem handelt es sich um folgende Aufgabe:
Vorhanden ist eine Datenbank, die Daten zu Projekten enthält. Jede Zeile hat also eine Projektnummer, die fortlaufend ist.
Die Projektnummer sieht z.B. so aus: 17-0123.
Es kommt aber gelegentlich vor, dass mal Lücken vorhanden sind, nach 0123 also z.B. 0125 kommt.
Diese Fälle soll ich kennlich machen indem z.B. zusätzlich eine leere Zeile eingefügt wird.
Mein Ansatz ist hier eine “Dummy-Tabelle” zu erzeugen, die mir Projektnummern fortlaufend erzeugt.
Wenn ich diese Tabelle habe muss ich sie mit dem Original vergleichen und mit einem left Join die leeren Zeilen erzeugen (evtl. kann man das ja irgendwie auf eine Zeile je Lücke begrenzen)
Meine (Anfänger) Probleme sind jetzt:
- Die Projektnummer ist leider nicht ganz so einheitlich wie hier dargestellt. Manchmal gibt es noch Buchstaben zwischen denbeiden Zahlenreichen oder dahinter. Frage: Gibt es eine Möglichkeit in SQL alles was ein Buchstabe ist aus einem String zu entfernen?
- Wie erzeuge ich die nötige Zeichenfolge? Mittels generate_series kann ich zwar Zahlenfolgen erzeugen aber das genügt nicht ganz für meine Projektnummern.
Bisher habe ich viel mit VBA gearbeitet, wo ich solche Folgen mit Schleifen erzeugen würde:
for i=10 to 20
for j=0 to 999
strProjektnummer(k)=i & “-” & j
k=k+1
next j
next i
Wäre Super wenn ihr mir hier Tipps geben könntest. Vielleicht mache ich es mir hier auch etwas zu umständlich…
Gruß
Andreas