Quantcast
Channel: SQL Server Express Forum
Viewing all articles
Browse latest Browse all 484

Sortierung der Daten einer Datenbankabfrage anders ausgeben

$
0
0

Hallo Leute,

ich habe ein Problem mit der Anzeige (Sortierung/Gruppierung) meiner Daten über eine Abfrage.

Zum Einstieg eine Punkteverwaltung für ein Romméspiel erstellen und die Daten abfragen.

Das Modell beschreibt sich kurz wie folgt: "jeder Spieler erhält Punkte in einer Runde"

Es können mehrere Spieler in einer Runde mitspielen und jeder Spieler hat eine andere Punktzahl am Ende einer Runde.

Die Tabellen sehen ungefähr wie folgt aus:

CREATE TABLE [dbo].[Spieler] (
    [spieler_id] INT           IDENTITY (1, 1) NOT NULL,
    [name]       NVARCHAR (50) NULL,
    PRIMARY KEY CLUSTERED ([spieler_id] ASC)
);

CREATE TABLE [dbo].[Punkte] (    [punkte_id]  INT IDENTITY (1, 1) NOT NULL,    [punkte]     INT NULL,    [spieler_id] INT NULL,    [rnd_id]     INT NULL,    PRIMARY KEY CLUSTERED ([punkte_id] ASC),    CONSTRAINT [FK_Table_To_Spieler] FOREIGN KEY ([spieler_id]) REFERENCES [dbo].[Spieler] ([spieler_id]),    CONSTRAINT [FK_Table_To_Runde] FOREIGN KEY ([rnd_id]) REFERENCES [dbo].[Runde] ([rnd_id])
);

CREATE TABLE [dbo].[Runde] (    [rnd_id]    INT            IDENTITY (1, 1) NOT NULL,    [runden_nr] INT            NULL,    [hand]      BIT            NULL,    [notiz]     NVARCHAR (MAX) NULL,    [tstamp]    DATETIME       NULL,    PRIMARY KEY CLUSTERED ([rnd_id] ASC)
);


Eine Abfrage

SELECT        Runde.tstamp, Runde.runden_nr, Spieler.name, Punkte.punkte, Runde.hand, Runde.notiz
FROM            Punkte INNER JOIN
                         Runde ON Punkte.rnd_id = Runde.rnd_id INNER JOIN
                         Spieler ON Punkte.spieler_id = Spieler.spieler_id


gegen die DB bringt folgendes Ergebnis:

tstamp;runden_nr;name;punkte;hand;notiz
2015-01-29 12:00:00.000;1;Chris;100;1;la
2015-01-29 12:00:00.000;2;Chris;200;1;lala
2015-01-29 12:00:00.000;3;Chris;300;1;lalala
2015-01-29 12:00:00.000;1;Sandra;100;1;la
2015-01-29 12:00:00.000;2;Sandra;200;1;lala
2015-01-29 12:00:00.000;3;Sandra;300;1;lalala

Jetzt zu meiner Frage. Wie kann ich die Daten so darstellen das ich jeweils für die Spieler "Chris" und "Sandra" aus der Spalte "name" eine eigene Spalte bekomme und darunter die Punkte pro runden_nr sehe?

Vielen Dank schon einmal. 

Sorry für das Format, hatte eigentlich Bilder eingefügt welche ich aber auf Grund der ausstehenden Kontoüberprüfung noch nicht posten kann.





Viewing all articles
Browse latest Browse all 484