none
Abfragenproblem RRS feed

  • Frage

  • Hallo Forum,

    ich bin leider noch blutiger Anfänger was T-SQL angeht und würde mich über Hilfe sehr freuen.

    Ich muss eine Abfrage über zwei Tabellen erstellen, in der einen Tabelle stehen Daten zu Aufträgen, in der zweiten stehen pro Auftrag bis zu zehn weitere Datensätz die ich gerne angezeigt haben will (Also zu jedem Eintrag in der ersten Tabelle bis zu zehn Datensätze in der zweiten 1:N)

    a.) Wie kann ich es hinbekommen, dass ich für jeden Eintrag in der zweiten Tabelle auch eine Ausgabe mit den Daten der ersten (Auftragskopf)Tabelle erstelle?

    Und b.) ist es ggf. möglich die Tabellen so zu abzufragen, dass ich die Felder aus der zweiten Tabelle "hinter" die der ersten Tabelle zu sortieren, dass ich am Ende nur einen Datensatz je Aufrtrag habe?

    gruß

    Heiko

    Montag, 3. Juni 2013 08:28

Antworten

  • a) Eine Parent-Child-Beziehung, geht mittels INNER JOIN (LEFT JOIN wenn in der abhängige Tabelle nicht immer Daten vorhanden sein müssen):
    SELECT P.*, C.*
    FROM Tabelle1 P
      INNER JOIN Tabelle2 C ON P.ID = C.ParentID;
    b) Im Grunde ja. Ein Pivot. Mittels CASE-Expression kannst du sie umbrechen. Wobei "hinter" nicht wirklich Sinn ergibt, da diese Art der Ausgabesteuerung idealerweise im Front-End gemacht werden sollte. Daher: wo brauchst du es?

    Vielen Dank dafür! Nun bekomme ich meine Ansicht. Allerdings ist sie nicht so vorteilhaft.

    Wie muss ich vorgehen um die Darstellung mittels PIVOT zu erstellen?

    • Als Antwort markiert mxyptlk Donnerstag, 6. Juni 2013 06:29
    Montag, 3. Juni 2013 09:04
  • Pivot

    Grüße

    • Als Antwort markiert mxyptlk Donnerstag, 6. Juni 2013 06:30
    Mittwoch, 5. Juni 2013 06:00

Alle Antworten

  • a) Eine Parent-Child-Beziehung, geht mittels INNER JOIN (LEFT JOIN wenn in der abhängige Tabelle nicht immer Daten vorhanden sein müssen):
    SELECT P.*, C.*
    FROM Tabelle1 P
      INNER JOIN Tabelle2 C ON P.ID = C.ParentID;
    b) Im Grunde ja. Ein Pivot. Mittels CASE-Expression kannst du sie umbrechen. Wobei "hinter" nicht wirklich Sinn ergibt, da diese Art der Ausgabesteuerung idealerweise im Front-End gemacht werden sollte. Daher: wo brauchst du es?

    Montag, 3. Juni 2013 08:38
    Moderator
  • Ich möchte einen View erstellen und diesem iim Sharepoint darstellen
    Montag, 3. Juni 2013 08:40
  • a) Eine Parent-Child-Beziehung, geht mittels INNER JOIN (LEFT JOIN wenn in der abhängige Tabelle nicht immer Daten vorhanden sein müssen):
    SELECT P.*, C.*
    FROM Tabelle1 P
      INNER JOIN Tabelle2 C ON P.ID = C.ParentID;
    b) Im Grunde ja. Ein Pivot. Mittels CASE-Expression kannst du sie umbrechen. Wobei "hinter" nicht wirklich Sinn ergibt, da diese Art der Ausgabesteuerung idealerweise im Front-End gemacht werden sollte. Daher: wo brauchst du es?

    Vielen Dank dafür! Nun bekomme ich meine Ansicht. Allerdings ist sie nicht so vorteilhaft.

    Wie muss ich vorgehen um die Darstellung mittels PIVOT zu erstellen?

    • Als Antwort markiert mxyptlk Donnerstag, 6. Juni 2013 06:29
    Montag, 3. Juni 2013 09:04
  • Pivot

    Grüße

    • Als Antwort markiert mxyptlk Donnerstag, 6. Juni 2013 06:30
    Mittwoch, 5. Juni 2013 06:00