webForumDet fria alternativet

Inner Joins...

3 svar · 210 visningar · startad av DiDjo

DiDjoMedlem sedan nov. 2002544 inlägg
#1

Hej! Chansar på att detta ska va i SQL forumet :)

sql = "SELECT topics.*, forums.*, statusname, statuslevel, moderator, gnamn.posts FROM (status INNER JOIN gaster ON status.statusid = gnamn.forumstat) INNER JOIN ((forums INNER JOIN moderators ON forums.forumid = moderators.moderatorforum) INNER JOIN topics ON forums.forumid = topics.forum) ON gaster.gnamn = topics.by WHERE topics.id = " & id
Set rsRoot = Server.CreateObject("ADODB.Recordset")
rsRoot.Open sql, conn, 3, 3

Får detta fel på den koden:

Microsoft JET Database Engine error '80040e14' 

Syntax error in JOIN operation. 

/kommun/forum/forum_las.asp, line 33

Har haft samma fel förut, antagligen för gaster och gnamn ligger fel i koden... gaster är en tabell, gnamn en kolumn :)

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Då access har så konstiga regler för multipla join så är det enklare att ange join-villkoren i where.

SELECT topics.*, forums.*, statusname, statuslevel, moderator, gaster.posts 
FROM status, gaster, forums, moderators,topics
where status.statusid = gaster.forumstat
and forums.forumid = moderators.moderatorforum
and forums.forumid = topics.forum
and gaster.gnamn = topics.by 
and topics.id = " & id

annars

SELECT topics.*, forums.*, statusname, statuslevel, moderator, gaster.posts 
from (((status inner join gaster on status.statusid = gaster.forumstat)
inner join topics on gaster.gnamn = topics.by )
inner join forums on topics.forumid = forums.forum )
inner join moderators on forums.forumid = moderators.moderatorforum
where topics.id = " & id

Med reservation för felaktiga tabellnamn/kolumnnamn. (Jag bytte alla förekomster av tabellnamnet gnamn till gaster.)

@ndersMedlem sedan juni 200032 969 inlägg
#3

Utan att ha lusläst din kod tycker jag det är ganska skumt att du försöker joina in en tabell utan att ha med den i joinvillkoret?

...status INNER JOIN [b]gaster[/b] ON [b]status[/b].statusid = [b]gnamn[/b].forumstat...

Edit: LarsG invalidifierar mitt inlägg, i vanlig ordning. ;)

DiDjoMedlem sedan nov. 2002544 inlägg
#4

@nders... Jag vet inte riktigt hur det ser ut, jag håller på att göra om mitt gamla forum, så det passar nya! Alla tabeller är lika, utom "gaster" och kolumnen "gnamn", i den gamla hetter tabellen anv och kolumnen anv, så det är svårt att veta vilken som ska vart... :)

LarsG: Den första koden fungerar! Sen var det en till nästan lika SQL rad... men den fick vara! För nu vet jag vilken som är tabell och kolumn i koden :e

Tack så mycket till er båda :)

148 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
146 ms — hämta tråd, inlägg och bilagor (db)