Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

XML: JOIN einer Abfrage aus Select teil

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von Rambo21, 29 August 2016.

  1. Rambo21

    Rambo21 Aktiver Benutzer

    Hallo,
    Zur Vorgeschichte: Ich habe eine DB mit 2 Tabellen
    1. Tbl: ACCOUNT: Hier habe ich die ID_ACC (PK), Kontonr, Kunde (Unternehmen)
    2. Tbl: PERSON: ID_ACC (FK), ID (PK), Funktion, Vorname, Nachname

    Zur Datenstruktur: Ich habe ein Konto und zu diesem Konto 2 Personen
    Tbl ACCOUNT
    ID_ACC: 1
    Kontonr: AT914578986532124565
    Kunde: Firma AG

    Tbl PERSON:
    ID_ACC: 1
    ID: 1
    Funktion: Wirtschaftlicher Eigentümer
    Vorname: Max
    Nachname: Mustermann

    ID_ACC: 1
    ID: 2
    Funktion: Zeichnungsberechtigte
    Vorname: Maria
    Nachname: Musterfrau

    In meiner XML Abfrage will ich nun folgende Struktur erreichen

    <AccountReport>
    <Konto>
    <ID_ACC>1</ID_ACC>
    <Kontonr>AT914578986532124565</Kontonr>
    <Kunde>FirmaAG</Kunde>
    </Konto>
    <Person>
    <ID_ACC>1</ID_ACC>
    <ID>1</ID>
    <Funktion>Wirtschaftlicher Eigentümer</Funktion>
    <Vorname>Max</Vorname>
    <Nachname>Mustermann</Nachname>
    </Person>
    <Person>
    <ID_ACC>1</ID_ACC>
    <ID>2</ID>
    <Funktion>Zeichnungsberechtigte</Funktion>
    <Vorname>Maria</Vorname>
    <Nachname>Musterfrau</Nachname>
    </Person>
    </AccountReport>
    <AccountReport>
    weiteres Konto mit weiteren Personen
    </AccountReport>
    usw..

    Um die Personen eben zweimal darstellen zu können - für ein Konto, die richtigen Personen-, muss ich die Abfrage für die Personen im Select Teil schreiben.

    select Konto, (select Personen from PERSON) from ACCOUNT

    Ich weiß jetzt aber nicht, wie ich eine Abfrage welche im Select Teil ist, mit der Tabelle im FROM Teil verbinden soll. Verbinde ich die Abfragen nicht, habe ich das Problem , dass ich alle Personen immer zu jedem Konto angezeigt bekomme.

    Danke für die Unterstützung!
     
    Zuletzt bearbeitet: 29 August 2016
  2. ukulele

    ukulele Datenbank-Guru

  3. Rambo21

    Rambo21 Aktiver Benutzer

    Sieht gut aus, werde testen und mich melden. Danke vorerst!
     
  4. Rambo21

    Rambo21 Aktiver Benutzer

    Das funktioniert prima. Nun fehlen mir noch zwei Sachen, dann habe ich hoffentlich alles:
    1- Die XML Codierung: <?xml version="1.0" encoding="UTF-8"?>. ich habe sie leider nicht in meiner XML Datei. Habt ihr eine Idee wie ich sie ganz oben hinzufügen kann?
    2- Der Header der XML Datei:
    <Kontoregister xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:iso="at:gv:bmf:fon:isocountrytypes:v1"
    xmlns:xy="https://finanzonline.bmf.gv.at/fon/ws/uebermittlungKonto">

    Hier geht es mir um die letzte Zeile xmlns:xy. Wie kriege ich das ":xy" hier weg.

    Hat zwar nichts mit DB's zu tun, aber ich probiere es mal bei euch.

    LG
     
  5. ukulele

    ukulele Datenbank-Guru

    Prinzipiell müsste man das auch als String verketten können und mit replace() Teile ersetzen/ändern. Ich hab bisher eigentlich immer nur XML importiert :)
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden