Willkommen auf der IT Seite.
Hier möchte ich einige Howtos, Anleitungen und andere IT-Relevante Dinge zum Download bereitstellen.
Bitte beim Download zur weiteren Verwendung aber auf das Copyright achten!
Bei weiteren Fragen könnt ihr mir auch eine Mail zukommen lassen.
Oracle: Mittels einer Select-Abfrage ein neues Kommando basteln |
|
Posted by Benjamin Wagner (benjamin) on Feb 16 2019 |
Beispiel:
Aus allen Tabellen eines Users soll die Anzahl der Datensätzen herausgelesen werden.
Wie kann ich das über ein Script schaffen?
In unserem Fall hat der Anwender 4 Tabellen (TEST1 bis TEST4)
Dazu erstellt man z.B. folgende Abfrage:
select table_name from user_tables;
Jetzt bekomme ich aber eine ganze Anzahl von Tabellen angezeigt. Muss ich nun für jede Tabelle das Kommando select count(*) from tabelle eingeben?
Nein!
Hier hilft uns folgendes Kaskadieren weiter:
select 'select count(*) from ' || table_name || ';' from user_tables;
Das Format sieht so aus:
select 'TEXT' || SPALTENNAME DER ORIGINAL-SPALTE || 'WIEDER TEXT' FROM TABELLE;
oder in unserem Fall:
select count(*) from TEST1;
select count(*) from TEST2;
select count(*) from TEST3;
select count(*) from TEST4;
Wir haben eine Tabelle TEST1 mit folgendem Inhalt:
NUMMER,NAME,BEMERKUNG
select 'Unser Mitarbeiter ' || NAME || ' mit der Mitarbeiternummer ' || NUMMER || ' arbeitet bei uns als ' || BEMERKUNG || '' from TEST1;
Unser Mitarbeiter Hans Hansen mit der Mitarbeiternummer 2 arbeitet bei uns als Pfoertner
Last changed: Feb 16 2019 at 01:11
Back