Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Anke_71 am Juni 23, 2015, 15:03:18

Titel: Hilfe zu Abfrage gesucht
Beitrag von: Anke_71 am Juni 23, 2015, 15:03:18
Hallo, ich möchte eine bestehende Tabelle in eine andere Darstellungsform umschreiben und hänge etwas fest ...

Folgende BeispielTabellenstruktur mit den drei Spalten A,B und C mit jeweils -1 (WAHR) oder NULL als Inhalt:
ID A B C
1 -1 NULL -1
2 -1 NULL NULL
3 NULL NULL NULL
4 -1 -1 -1

Ich möchte die Tabelle mit einer Tabellenerstellungsabfrage/SQL Code in eine zweispaltige Tabelle wie folgt umschreiben: alle "WAHR" Werte sollen als eigene Zeile abgebildet werden und die Spaltenüberschrift als Text in die zweite Spalte übernehmen; NULL -Inhalte sollen möglichst nicht abgebildet werden (notfalls auch leerzeilen mit der ID, wäre auch egal):
ID Egal
1 A
1 C
2 A
4 A
4 B
4 C

Jemand eine Idee, wie das geht? Ich habe in der Ausgangstabelle ca. 30 Spalten mit langen Titel, es wäre daher klasse, wenn ich die Spaltentitel nicht jeweils einzeln in die Abfrage eingeben müsste; notfalls geht das aber natürlich auch.

Viele Grüße
Titel: Re: Hilfe zu Abfrage gesucht
Beitrag von: DF6GL am Juni 23, 2015, 15:31:19
Hallo,

ich denke mal, da wäre VBA angesagt (wobei ich gerne erfahren würde, was da genau dahinter steckt):

Welchen Datentyp haben die Tabellenfelder?

Öffne einen Recordset auf Basis der Ausgangstabelle und durchlaufe die Felder in einer Schleife. Dabei wird der Inhalt des jeweiligen Feldes auf <> NULL getestet und in diesem Fall mittels eines zweiten Recordsets mit Basis der Zieltabelle der Feldname als neuer Datensatz angehängt.

(Das Anhängen kann natürlich auch mittels einer Insert-Abfrage erfolgen)
Titel: Re: Hilfe zu Abfrage gesucht
Beitrag von: Anke_71 am Juni 23, 2015, 18:10:29
Hi, VBA kann ich leider nicht (und auch keine Zeit zum Erlernen); nur mit SQL über eine Tabellenerstellungsabfrage gibt es keine Option? Die Spalten in der Tabelle haben "Zahl" als Format.
Titel: Re: Hilfe zu Abfrage gesucht
Beitrag von: ebs17 am Juni 23, 2015, 21:20:40
Zitatnur mit SQL über eine Tabellenerstellungsabfrage gibt es keine Option?
Feldnamen zu Feldinhalten umfunktionieren - das macht SQL nicht. Also nein.

Oder hast Du Deine Aufgabe zu Tode modelliert?
Titel: Re: Hilfe zu Abfrage gesucht
Beitrag von: MaggieMay am Juni 23, 2015, 23:54:32
Hi,
Zitatnur mit SQL über eine Tabellenerstellungsabfrage gibt es keine Option?
natürlich geht das auch "nur" mit SQL, aber da ist Schreibarbeit angesagt, die du ja vermeiden wolltest.
ZitatDie Spalten in der Tabelle haben "Zahl" als Format.
Das Datenformat wäre dabei ja wohl das geringste Problem. 
Titel: Re: Hilfe zu Abfrage gesucht
Beitrag von: Anke_71 am Juni 24, 2015, 10:32:12
Hallo MaggieMay,
wie würde denn der Code für obiges Beispiel mit SQL aussehen? Schreibarbeit ist kein Problem, dass muss ich ja nur einmal machen und dann ist es fertig. Wenn ich weiss, wie der SQL Code für zwei Beispiel-Spalten aussieht, kann ich die anderen Spalten nach dem gleichen Schema dranhängen.
Titel: Re: Hilfe zu Abfrage gesucht
Beitrag von: MaggieMay am Juli 13, 2015, 13:16:01
Hi,

sorry, habe dich ganz vergessen...

Du erstellst die Zieltabelle am besten manuell, dann kannst du folgende Anfügeabfragen laufen lassen:
Insert Into tabelle_neu (ID,Egal) Select ID, "A" From tabelle_alt Where A Insert Into tabelle_neu (ID,Egal) Select ID, "B" From tabelle_alt Where B usw.