# Sql / Transponieren?



## Psicopatico (9. September 2004)

Hi

Ich habe 2 tabellen, in der 1. brauche ich ein Zeile und in der 2. eine Spalte wie kann ich das mit einem Select herausholen, ohne die Tabelle zuvor zu transponieren? Gibt es dafür einen Selectbefehl?

Gruss und Dank


----------



## XChris (9. September 2004)

Welches DBMS System?
Hast Du mal in die Doku geschaut?
Wie sind die Tabellen aufgebaut und in welcher Relation stehen sie zueinander?

Chris


----------



## Psicopatico (10. September 2004)

Ich weis nicht genau was du alles bruachst. Ich schreib hier einfach mal das rein was ich weis 

Oracle 9.2.xxx (Sql*Plus)

Ich weis auch nicht genau was du mit Doku meinst... ich habe hier einfach eine A3 Seite auf der die Tabellen aufgelistet sind(da komm ich sowieso nicht ganz draus :s, bin seit letztem Mittwoch Praktikant). Ich brauche die Daten von dem Fettgedruckten:

_Fallazleistung_ , Recid*, Ismfallnr (FK), *Chop*,
_Patfall_, Ismfallnr*,
_Fallfach_ Ismfallnr (FK),  *ICD1, ICD2, IDC3 bis ICD10*.

Wenn du mehr brauchst sags einfach dann muss ich suchen 

Danke im Voraus


----------



## XChris (10. September 2004)

Also:

Fallazleistung , Recid*, Ismfallnr (FK), Chop,
Patfall, Ismfallnr*,
Fallfach Ismfallnr (FK), ICD1, ICD2, IDC3 bis ICD10.

Du kannst das so tun:

select LISTE DER GEWÜNSCHTEN DATEN from BETEILIGTE Tabellen WHERE Bedinungen.

Was Dich interssiert sind wohl die Bedinungen. Ich werd nicht ganz schalu aus den 3 Tabellen. Vielleicht kannst Du mal in die Konsole descripe Tabellenname einegeben  ... dann sieht man den korrketen aufbau.

Generell kannst DU in der WHERE Klause ID von Tabellen verbinden um die Tupel sauber wiederzusammen zu suchen.

also so:

select GEWÜNSCHTE INFO from BETEILIGTE TABELLEN where BEDINGUNGEN. Also so:

select  blabla from tab1, tab2 where tab1.primärkey = tab2.forignkey

Chris


----------



## Psicopatico (10. September 2004)

Fallazleistung

Name                                      Null?                    Typ
-----------------------------------------------------------
RECID                                     NOT NULL        NUMBER(11) Primärschlüssel
ISMFALLNR                            NOT NULL        NUMBER(11) Fremdschlüssel
TYP                                          NOT NULL        NUMBER(2)
STATUS                                                              VARCHAR2(1)
ABNORM                                                            VARCHAR2(1)
*CHOP                                                             VARCHAR2(10)* 
SPEZCODE                                                       VARCHAR2(10)


Patfall

Name                                      Null?                     Typ
----------------------------------------------------
ISMFALLNR                           NOT NULL         NUMBER(11) Primärschlüssel 
FACH_RECID                                                    NUMBER(11)
PATNR                                                                VARCHAR2(10)
FALLNR                                                              VARCHAR2(10)


Fallfach

Name                                      Null?                    Typ
----------------------------------------------------------
RECID                                     NOT NULL          NUMBER(11)  Primärschlüssel
FACH_RECID                        NOT NULL          NUMBER(11)  
ISMFALLNR                           NOT NULL           NUMBER(11) Fremdschlüssel
*ICD1                                                                       VARCHAR2(10)* 
DGCODE1                                                            VARCHAR2(10)
ICDTXT1                                                                VARCHAR2(255)
INBERICHT1                                                        NUMBER(1)
*ICD2                                                                      VARCHAR2(10)* 
.
.
*bis ICD10* 


Das sind jetzt nur einige Felder aus den 3 Tabellen die ich brauche es wird eine riesige Abfrage... das Problem ist bei Fallazleistung ist Chop unsortiert in Typ. Und es gibt ca. 30 Chops und ich brauche alle die, die einen enthalten in einer outputfile. das outputfile sieht dann ungefähr so aus:

patnr, name, vorname, fach_recid, chop, chop....bis 30, icd1-10.

Das Problem bei den Chops ist, dass die nicht sortiert sind und die beziehung von Patfall zu fallazleistung 1: null, 1 oder mehreren ist. wenn du noch mehr brauchst sags einfach.

Danke


----------



## Psicopatico (13. September 2004)

habs jetzt mit pl/sql hinbekommen.

danke trotzdem


----------

