Koppla 2 tabeller i ms SQL

Databaser & SQL

1 svar · 112 visningar · startad av Arne

Medlem sedan maj 2000267 inlägg
Trådstart#1

Vet inte om jag är i rätt forum, men jag provar. Programmerar i asp.net och använder <asp:SqlDataSource till en datagrid.

Jag har 2 tabeller i MS SQL 2008. foreningar och uppdrag
Jag lagrar all information om föreningarna i ena tabellen och de olika uppdragen (styrelse poster/personer) tillhörande föreningarna i en annan tabell.

Slår ihop dom enligt SELECT satsen nedan med foreningnr (föreningens unika nummer). Kan se ut typ: 25J0234

Mitt problem är om en förening inte har något uppdrag så visas ej den föreningen. Jag vill att föreningens uppgifter visas men uppdrag, förnamn, efternamn visas ej då. De fälten är blanka.
Så den föreningen som ingen person/uppdrag visas föreningens uppgifter på en rad i min grid. Är det flera personer/uppdrag som finns i föreningen visas det flera rader i griden....

SelectCommand="SELECT f.distriktnr, f.distriktnamn, f.foreningnr, f.foreningnamn, f.lokal, f.aktivitetsrapport, f.arsrapport, u.Uppdrag, u.FirstName, u.LastName, u.ForeningNamn FROM dbo.foreningar f INNER JOIN dbo.uppdrag u ON f.foreningnr = u.ForeningNr

Medlem sedan jan. 2003296 inlägg
#2

Du kan använda LEFT JOIN istället för INNER JOIN för att få med även de föreningar som inte har några uppdrag. Du kommer däremot få NULL istället för blanka värden för u.Uppdrag etc, vet inte hur din grid hanterar det. Annars kan du använda ISNULL(u.Uppdrag, '') AS Uppdrag, ISNULL(u.FirstName, '') AS FirstName o s v för uppdragsfälten.

252 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)