webForumDet fria alternativet

eländiga joinar

Databaser & SQL

6 svar · 228 visningar · startad av K@llen

Medlem sedan mars 20032 667 inlägg
Frågan#1

Nu blir jag rent yr. Om jag använder en inner join får jag inga träffar. Använder jag en left join får jag ut head och insertDate men inte namnen, och använder jag en right join får jag ut namnen men inte övrig information. Hur får jag ut allt?

Läste ett bra inlägg om joinar av larsG här, men det gjorde mig ännu mer förvirrad. :(

sql ="SELECT a.memberId, a.articleId, a.head, " & _
" a.insertDate, m.fName, m.eName " & _
" FROM wm_article a " & _
" RIGHT JOIN wm_member m " & _
" ON ( a.memberId = m.memberId ) " & _
" WHERE a.publishDate is null " & _
" ORDER BY a.insertDate ASC "

RED: dbms access

Medlem sedan mars 20032 667 inlägg
#2

Testade även:

RIGHT OUTER JOIN
LEFT OUTER JOIN

utan resultat. :(

Medlem sedan dec. 200012 464 inlägg
#3

Hur ser tabellerna ut? (Med exempel på innehåll)

Vad är det du vill ha fram för resultat?

Medlem sedan mars 20032 667 inlägg
#4

Relevanta fält i tabellerna:

-- wm_member --
memberId (int) 1
fName (text) knut
eName (text) knutsson

-- wm_article --
articleId (int) 1
memberId (int) 1
head (text) rubrik1
insertDate (dateTime) 2003-04-25 15:06:44
publishDate (dateTime) null

publishDate är null om en artikel inte är publiserad. Nu vill jag presentera head, insertDate, fName, eName samt articleId på alla opublicerade artiklar. Det enda fältet som kan vara tomt är publishDate.

Medlem sedan dec. 200012 464 inlägg
#5
sql ="SELECT a.memberId, a.articleId, a.head, " & _
" a.insertDate, m.fName, m.eName " & _
" FROM wm_article a " & _
" INNER JOIN wm_member m " & _
" ON ( a.memberId = m.memberId ) " & _
" WHERE a.publishDate is null " & _
" ORDER BY a.insertDate ASC "
Medlem sedan mars 20032 667 inlägg
#6

Det var det första jag testade, men jag får inte några träffar på den sql-frågan. Vid left join får jag träff, men vid utskrift får jag ej fram fName och eName. Vid right join får jag också träff men då på fName och eName, men inte head.

Medlem sedan mars 20032 667 inlägg
#7

Tömde cachen i webbläsaren. Nu fungerar det. :)

Tack LarsG! :D

261 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
134 ms — deklarationer (db)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)
136 ms — ändringar (db)