[Oracle] SQL Abfrage leere / fehelnde Zeilen hinzufügen

wraith01

Grünschnabel
Hallo,
ich habe folgendes Problem.

Ausgang ist eine Tabelle Kunde die wie folgt aussieht:

id, ordernr, name

Die Daten sind zum Beispiel:

ID ORDERNR NAME
--------------------------------------
1 1 Müller
2 2 Thomas
3 4 Max
4 5 Dieter
5 7 Alf
6 9 Duncan
7 10 Connor
8 14 Chris


Ich benötige eine SQL Abfrage, welche mir die "Lücken" bei der ORDERNR auffülllt.
D.h. Das Ergebnis meiner Abfrage z.B select * from kunde
soll so aussehen:

ORDERNR NAME
--------------------------------------
1 Müller
2 Thomas
3
4 Max
5 Dieter
6
7 Alf
8
9 Duncan
10 Connor
11
12
13
14 Chris


Kann mir da jemand helfen********?

Beste Grüße,
 
Oracle, MySQL, MS Access, SQL Lite, MS SQL, Peregraine......
Bitte wähle eine DBMS aus

Nachtrag:
Hab den Titel entsprechend ergänzt
 
Das kannst du rein sql technisch grad nicht ändern, bzw. wenn nur mit viel Aufwand. Wenn du mir sagst was für ne Programmiersprache kann ich dir glaub helfen^^
 
Ich benötige da das "reine" SQL,
da ich diesen dann in Birt Report nutzen will/muss. Der Aufwand, der hierfür nötig ist
ist erst einmal völlig egal.

Beste Güße,
 
da kommste aber glaub nicht ums programmieren rum, da wird wahrscheinlich kein reines sql gehen, bzw. theoretisch könntest du nen eigenes programm schreiben das das macht, aber musst halt jedes mal ausführen wenn du die tabelle sich verändert hat, das meinte ich mit aufwand
 
Mittels PL/SQL eine Tabelle erstellen und alle IDs bis zur höchsten ID deiner Tabelle einfügen. Dann ein LEFT JOIN von der ID-Tabelle zur Datentabelle.
 
Hi,

ich hatte mir da so einen Ansatz überlegt. Es git bei mir noch mehre Tabellen mit bis zu 10000 und mehr
Records. Könnte ich da nicht folgendes machen?

Die Abfrage für z.B.: select ordernr, name from kunde

mit

select rownum from artikel where rownum <15

verbinde?

JOIN ****?

Beste Grüße,



Hallo noch ein Nachtrag:


http://www.tutorials.de/relationale-datenbanksysteme/386825-sql-anweisung-mit.html

geht da was mit einem LEFT JOIN ****?
 
Zuletzt bearbeitet:
stimmt jaslaw daran hatte ich garnicht gedacht, das müsste klappen.
verstehe nicht was du genau meinst wraith01
 
Hi,
hatte mir das eventuell so gedacht.

Mit select rownum .... bekomme ich doch soetwas wie eine fortlaufende Nummer.
Diese könnte ich in die Spalte ORDERNR schreiben.

z.B.

ORDERNR
------------
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Mit einer Abfrage auf kunde bekomme ich den name mit zugehörger ordernr,
beide select's zusammen legen. Wie auch immer damit es so aus sieht:

ORDERNR NAME
--------------------------------------
1 Müller
2 Thomas
3
4 Max
5 Dieter
6
7 Alf
8
9 Duncan
10 Connor
11
12
13
14 Chris
 

Neue Beiträge

Zurück