Autor Beitrag
Habak
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: Do 23.12.10 23:25 
Guten Abend,

als SQL-Laie würde ich gerne wissen, ob es möglich ist, 1:n Beziehungen in einer Abfrage oder SQL-Ansicht auch als EIN Ergebnis darzustellen.
Folgendes Beispiel:
Über mehrere Tabellen sind dem Landstrich "Alpen" z.B. die Länder "Deutschland", "Österreich", "Frankreich", "Italien" zugeordnet.
Bei einer normalen Abfrage bekomme ich als Ergebnis für den Landstrich "Alpen" und die zugehörigen Länder folgende Auflistung:

Alpen Deutschland
Alpen Österreich
Alpen Frankreich
Alpen Italien

Gibt es eine Möglichkeit dies mit einer Abfrage oder Ansicht auch so darzustellen:

Alpen Deutschland, Österreich, Frankreich, Italien

d.h. die Länder "einfach" aneinandergereiht.

Vielen Dank schon im voraus.
(Nicht nur der Weihnachtsmann weiß eine Antwort zu würdigen)

Habak
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Do 23.12.10 23:31 
Wozu sollte das gut sein? Für solche kosmetischen Änderungen an Daten ist die GUI-Ebene zuständig und sicher nicht der DB-Server.

_________________
>λ=
Trashkid2000
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 561
Erhaltene Danke: 137



BeitragVerfasst: Fr 24.12.10 11:30 
Hallo,
es kommt natürlich darauf an, mit was für einen Server Du arbeitest.
Habe mal eine Seite mit einem guten Beispiel gefunden:
www.nigelrivett.net/...romTableEntries.html

Auf Dein konkretes Beispiel würde es dann so in etwa aussehen:
ausblenden SQL-Anweisung
1:
2:
3:
4:
5:
6:
declare @csv varchar(1000)
select @csv = coalesce(@csv+', ''') + l.Land
from Landstrich ls Inner Join Land l
ON ls.LandId = l.LandId
where ls.Landstrich = 'Alpen'
Select @csv;
Ansonsten gebe ich user profile iconKha Recht, dass es vielleicht ganz gut wäre, dies in der Anwendung zu realisieren.
LG
Habak Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: So 26.12.10 19:31 
Hallo Marko,

vielen Dank für die Antwort. Ich werde versuchen, das Beispiel die nächsten Tage umzusetzen.
Ich arbeite mit Visual Studio C# und daher indirekt mit dem MS SQL Server.
Hintergrund meiner Frage ist, dass ich mittels DataGridView eine Tabelle anzeigen will. Damit diese übersichtlicher ist, möchte ich die meist mehreren Länder eines Landstriches in einer eigenen Spalte als Aufzählung anzeigen.
Da nach meinem Kenntnisstand das DataGridView nur eine Tabelle anzeigen kann, muss ich daher versuchen die Länderdaten in eine Spalte zu schreiben.
Eine andere Möglichkeit ist mir bisher nicht bekannt.

Daher erst mal Danke. Ich gebe Bescheid, wie ich mit der Lösung vorankomme.

Viele Grüße

Habak
Habak Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 24



BeitragVerfasst: So 02.01.11 16:26 
Hallo Marko,

zu aller erst wünsche ich Dir ein gutes neues Jahr.
Ich habe mich nun mehrere Tage durch das Thema Funktionen in Verbindung mit Visual Studio gequält. Dabei musste ich feststellen, dass die Dokumentation sehr dürftig ist. Nachdem ich mit herumprobieren auch nicht zum Ziel gelangt bin, habe ich einfach eine zweite Tabelle erstellt, in der die Länder nun als ein String eingefügt werden. Das ist sicherlich nicht die eleganteste Lösung, fuktioniert aber.

Nochmals vielen Dank.

Viele Grüße

Habak