webForumDet fria alternativet
Logga in / Bli medlem

Flera författare

Databaser & SQL

2 svar · 203 visningar · startad av Fraggel

Medlem sedan sep. 2003301 inlägg
Trådstart#1

Jag har en databad som innehåller att antal artiklar.

Enkel? och kort beskrivning av DB
En artikel kan har flera författare, en författare kan har flera artiklar. Artiklarna är indelade i sektioner, en sektion kan ha flera artiklar men en artikel kan bara ha en sektion!

Glasklart eller hur!!!

Databasen

art:
art_ID * key, autonbr *
art_url *txt* ' länk till den site där artikeln ligger.
art_titel *txt * ' Den text som beskriver länken(text som visas
på webben)
sektion_ID *nbr* ' ID från sektions tabellen

forfattare:
forf_ID *key, autonbr*
forf_fNamn *txt*
forf_eNamn *txt*
forf_beskr *txt*

art_forfattare:
art_ID *key*
forf_ID *key*

sektion:
sektion_ID *key autonbr*
sektion_beskr

Som det är nu så vet jag inte hur jag skall lösa det med FLERA författare på samma artikel utan att ful hacka det. Eller det kanske är ett måste.

som det är tänkt så skall jag kunna sortera och presentera en lista på artiklar soretade på Efternamn eller Sektion.

Jag har lyckats så lång att jag får fram alla artiklera som fyller en viss kategoir. jag har bygget ett Query i Access com löser detta åt mig, men den löser inte problemet med att få ut alla författare till samma artikel. Som det är nu så ser jag bara den författaren som jag sorterade på tex:
Lundin och Jönsson har skrivit en artikel tillsammans. När jag sorterar på bokstaven L så dyker då den artikeln upp i listan, helt korrekt, men hur skall jag lyckas fixa så att jag även får med att Jönsson är med skyldig till den samma måste jag då in och ful hacka lite ? eller kan jag lösa det "THE SQL WAY"

Medlem sedan dec. 200012 464 inlägg
#2
select f2.*,af1.art_id
  from forfattare ((f1 inner join art_forfattare af1
    on f1.forf_id = af1.forf_id)
  inner join art_forfattare af2 on af1.art_id = af2.art_id)
  inner join forfattare f2 on af2.forf_id = f2.forf_id
 where f1.forf_enamn like 'L%'
Medlem sedan sep. 2003301 inlägg
#3

Okej inte för att jag hajjar vad som händer riktigt i SQL satsen man jag skall bena ut det hela, känner igen InnerJoin men vad f2 kommer i från hajjar jag inte..., har dock inte testat detta ännu så jag vet inte...

384 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
125 ms — deklarationer (db)
126 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)