webForumDet fria alternativet

Strukturfråga samt förslag på sql-sats

Databaser & SQL

3 svar · 311 visningar · startad av Addeladde

Medlem sedan jan. 20013 406 inlägg
Frågan#1

Hej

Jag håller på bygger ett arkiv med olika personer med röstprover.
Har en tabell för alla personer/aktör, en tabell för röstproverna och en tabell för språknamnen. I röstproverna så står det specificerat vilket språk det specifika röstprovet är för.

En person kan alltså ha flera röstprover kopplat till sig med flera olika språk.

Vet inte riktigt hur jag vill att listan ska byggas men det ska finnas information om Språk, aktörs ID, namn

Språk är viktigt att det syns i listan. Men om en aktör har 3 språk som den gjort ett röstprov på så får man antingen rada upp språken efter varandra. Eller så radar man upp samma person flera gånger. Det skulle då kunna se ut så som nedan. Har röstaktören ingen röst upplagd på sig ännu ska även det synas fast då ska språket såklart inte skrivas ut.

RostKod      Sprak           Namn
1               Svenska        Pelle
2               Svenska        Lisa
1               Engelska        Pelle
3               inget språk     Björn

De tabeller som jag har är:

[b]Röstaktörer:[/b]
Tabellnamn: roster
Fält:
rostID, rostNamn

[b]Röstprover:[/b]
Tabellnamn: rostProv
Fält:
rostProvID, rostID, rostSprakID

[b]Sprak:[/b]
Tabellnamn: rostSprak
Fält:
sprakID, sprakNamn

Förslag på hur jag ska skriva ut resultatet på bästa och mest naturliga sätt.
Det här är för administrationen. De som kunderna sedan ser är en anna femma.
Det ska alltså vara för den som administrear arkivet så den kan se på enklast sätt.

Hur gör jag sedan sql-frågan.

Medlem sedan juni 200032 967 inlägg
#2

Förslag på hur jag ska skriva ut resultatet på bästa och mest naturliga sätt.

Lös det i applikationen, inte i SQL-frågan.

Hur gör jag sedan sql-frågan.

Eftersom du inte angett vilken dbms du använder är svaret ganska generellt.

SELECT <fldlist> FROM Röstaktörer R
LEFT JOIN Röstprover RP ON R.rostID = RP.rostID 
LEFT JOIN Sprak S ON RP.rostSprakID = S.sprakID
Medlem sedan jan. 20013 406 inlägg
#3

Tackar Anders

Medlem sedan juli 200012 978 inlägg
#4

Jävligt intresserad av hur det låter när Björn pratar!

264 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)