webForumDet fria alternativet

Join och SQL

8 svar · 220 visningar · startad av pirajan

pirajanMedlem sedan apr. 2001246 inlägg
#1

Har pulat med detta halva natten, men fattar fortfarande inte Joins och sånt.

Jag har två tabeller

tblForum
id
fldTitle
fldDescription

och

tblForumMessages
fldForumId
fldUsername
fldDate

Nu vill jag skriva ut en lista som innehåller alla forumen (typ som här på webforum) i stil med:

tblForum.fldTitle tblForumMessages.fldDate tblForumMessages.fldUsername
tblForum.fldDescription

Alltså att den skriver ut ett forum med datum för senaste inlägget och vem som skrev det... Hur gör jag?

OveRRidEMedlem sedan feb. 200112 078 inlägg
#2

Flyttas från ASP, VBScript.

RED. Fel.

pirajanMedlem sedan apr. 2001246 inlägg
#3

Men detta listar ju samma forum flera gånger...?

OveRRidEMedlem sedan feb. 200112 078 inlägg
#4

Jo, jag tänkte lite fel.

LarsGMedlem sedan dec. 200012 464 inlägg
#5
select f.fldTitle,
          m.fldDate ,
          m.fldUsername, 
          f.fldDescription 
from tblForum as f inner join tblForumMessages m
 on f.id = m.forumid
where fldDate in (
select  max(fldDate) from  tblForumMessages
 where forumid = m.forumid )
pirajanMedlem sedan apr. 2001246 inlägg
#6

Får error:

SQLState: 42000
Native Error Code: 1064
[TCX][MyODBC]You have an error in your SQL syntax near 'select max(fldDate) from tblForumMessages where forumid = m.forumid )' at line 1

SebbeMedlem sedan jan. 20032 285 inlägg
#7

/red Den redigerar vi bort. :)

juventus1Medlem sedan dec. 2000399 inlägg
#8

MySQL stöder sub-queries från och med v. 4.1. Kolla här: http://www.mysql.com/doc/en/ANSI_diff_Sub-selects.html Där får du lite tips om hur du kan skriva om den.

LarsGMedlem sedan dec. 200012 464 inlägg
#9

Det går inte att skriva detta med en fråga utan att använda subselect.

http://www.mysql.com/doc/en/example-Maximum-column-group-row.html

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