Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[SQL] Meerdere records in één record

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben nu al een tijd bezig met het volgende maar kom nog niet tot een goed oplossing:

Ik wil een view maken van het volgende:

Tabel:

RelatienummerBoekingnummerContact
11Test1
12Test2
23Test1
34Test1
35Test3
36Test4


Ik wil dan als output graag het volgende:
RelatienummerContact1Contact2Contact3
1Test1Test2
2Test1
3Test1Test3Test4


Het is dus 1 op veel, dus het zou ook zo kunnen zijn dat er nog meer contacten zijn per relatienummer.

Ik ben hier echt al een tijd naar aan het zoeken, ook bezig geweest met Pivot maar daar krijg ik ook geen goed resultaat mee. Is er iemand die mij hierbij kan helpen?

  • SLeddert
  • Registratie: December 2002
  • Laatst online: 27-10 12:59

SLeddert

SLeddert

Ik ben geen SQL kenner, maar het kan niet zo moeilijk zijn toch ?
De boekingsnummerkolom is hier helemaal niet relevant.
Je queriet (queried) op WHERE RELATIENUMMER = 1 en daarvan toon je de contacts.
En dan uiteraard ook voor alle andere RELATIENUMMERS.

[ Voor 11% gewijzigd door SLeddert op 14-05-2013 15:19 ]

Karsten


  • TheNephilim
  • Registratie: September 2005
  • Laatst online: 21-11 15:31

TheNephilim

Wtfuzzle

Je zult met JOIN en GROUP BY aan de gang moeten in SQL. Verder is het lastig om concrete voorbeelden te geven, gezien je verder niet toelicht in welke omgeving je werkt.

  • martennis
  • Registratie: Juli 2005
  • Laatst online: 06-11 21:06
Met pivot zou het moeten werken, als je tenminste weet hoeveel kolommen je kunt verwachten. Je krijgt dan alleen wel null values voor de lege velden, maar dat lijkt me ook goed. Misschien kun je je pivot eens posten?

[ Voor 15% gewijzigd door martennis op 14-05-2013 15:29 ]


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Dit is typisch iets dat ik in de presentatie laag van mijn applicatie op zou lossen, en niet in de database. Waraschijnlijk weet je namelijk niet van te voren hoeveel contacten er per relatie kunnen zijn, dus dan is het niet eenvoudig om het zo voor elkaar te krijgen.

Als het wel een gelimiteerd aantal contacten is kan je inderdaad met JOIN en GROUP BY aan de slag, maar dan nog zou ik dat afraden.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Verwijderd

Topicstarter
Ik werk in Sql Server 2008 en ontwikkelomgeving is (nu nog) VB 2008 .

Het gaat hierbij om het vullen van een datagridview waarin ik dus deze velden weer wil geven. Bovenstaande tabel is dan gekoppeld aan de relatietabel en dan van elke relatie wil ik ook nog alle contacten weergeven die voorkomen wanneer er een boeking is gekoppeld. Ik kan dit dan wel oplossen in de applicatie, maar dan moet ik door de records heen gaan lopen voordat ik deze ga tonen in de datagridview.
In de dgv staan misschien wel 10000 records en als ik dan moet gaan kijken welke velden hieraan gekoppeld zijn dan wordt het er waarschijnlijk niet sneller op. Vandaar dat ik dacht aan het maken van een view of iets dergelijks.
Pagina: 1