[SQL Server 2005] Samenvoegen van verschillende rijen in 1 rij.

Status
Niet open voor verdere reacties.

maikelhs

Gebruiker
Lid geworden
9 okt 2012
Berichten
9
Goede morgen,

Ik zit inmiddels met hoofdpijn omdat ik een query niet voor elkaar krijg.
Ik heb de volgende situatie

ID Value#1 Value#2
1 Fiets Slot
1 Fiets Wiel
1 Fiets Ketting
2 Auto Band
2 Auto Stuur

Wat ik nu voor elkaar probeer te krijgen is het volgende

ID Value#1 Value#2
1 Fiets Slot Wiel Ketting
2 Auto Band Stuur

Dus ik probeer de rijen met hetzelfde ID in 1 rij te krijgen.

Wie kan mij hier een betere inzicht in geven?
 
Laatst bewerkt door een moderator:
Welkom op Helpmij :)

Wat is precies de bedoeling?
Je wilt een bestaande tabel aanpassen naar een nieuwe structuur?

Of gaat het om de weergave op een pagina?
 
Ik probeer een sql query zo te schrijven dat hij een export maakt met de data per ID in een rij. Snappie? :)
 
Dat ziet er inderdaad uit zoals ik het zou willen hebben, echter als ik de query aanpas
naar de kolom namen zoals ik ze nu heb, dan krijg ik een melding van:

Incorrect syntax near 'SEPARATOR'.
 
Hoe ziet je query er volledig uit?
 
[sql]SELECT
RecordID,
PropertyID,
(
SELECT
GROUP_CONCAT(PropertyVal SEPARATOR ';')
FROM
dbo.UserProfileValue m2
WHERE m2.id = m1.id
)
FROM
dbo.UserProfileValue m1
GROUP BY RecordID
[/sql]

Die bovenste 2 regels hoorde er niet bij. ;)
 
Laatst bewerkt door een moderator:
Zonder specifiek scheidingsteken doet hij het wel?
 
Nee dan geeft hij de melding:
'GROUP_CONCAT' is not a recognized built-in function name.

Misschien ook wel handig om te weten dat het om SQL Server 2005 gaat.
 
Ah, ja dat is wel handig inderdaad :)

Op deze engelse pagina staat een antwoord gepost wat schijnbaar hetzelfde doet als de MySQL functie "GROUP_CONCAT"
 
Helaas kom ik daar niet mee uit de voeten. Wat stom dat zoiets makkelijks toch zo moeilijk in een query te stoppen is :)
 
Dan kan ik je helaas niet verder helpen, mijn kennis is beperkt tot MySQL :)

Wellicht weet een andere gebruiker er meer vanaf.

Titel aangepast voor specificatie
 
Hier nog een voorbeeldje.
 
Het is ons inmiddels gelukt op de een of andere manier.
Dank je wel voor de reacties en tips.

mvg,
maikel
 
Misschien dan wel zo vriendelijk om voor de geïnteresseerden die oplossing te posten; een forum wil graag oplossingen geven, en iemand met dezelfde vraag heeft niet zoveel aan de wetenschap dat het bij jou is opgelost...
 
Natuurlijk zou ik graag de oplossing met jullie willen delen. Het probleem is alleen dat ik het uit besteed heb aan iemand anders en hij heeft het voor me opgelost.
Hij heeft me wel wat verteld hoe hij het heeft gedaan, maar daar snapte ik zelf al helemaal niets van. Kan het helaas niet delen dus.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan