GROUP BY och INNER JOIN hjälp

Databaser & SQL

3 svar · 267 visningar · startad av Sabotnick

Medlem sedan feb. 200377 inlägg
Trådstart#1

Hej,

Jag behöver hjälp med att göra en forum. Här är SQL-koden jag använder

SELECT tblforum.Forum_ID, tblforum.Sektion, tblforum.Rubrik, tblforum.Nycket, 
DATE_FORMAT(tblforum.SenasteSvar, '%Y-%m-%d') AS ToDate, 
DATE_FORMAT(tblforum.SenasteSvar, '%H:%i') AS ToTime, 
tblforumfolk.Anvandar_Id, tblforumfolk.Anvandarnamn, Count(tblforum2.Forum_ID) FROM tblforum 
INNER JOIN tblforumfolk ON tblforum.Anvandar_Id = tblforumfolk.Anvandar_Id 
INNER JOIN tblforum AS tblforum2 ON tblforum.Forum_ID = tblforum2.Read_ID 
WHERE tblforum.Read_ID = 0 GROUP BY tblforum.Forum_ID 
ORDER BY tblforum.Nycket DESC, tblforum.Senastesvar DESC LIMIT 0, 50

Kör jag denna kod så får jag inte ut inlägg som inte har någon svar. Tar jag bort GROUP BY tblforum.Forum_ID så får jag felmeddelande

Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no GROUP columns is illegal if there is no GROUP BY clause

Snälla kan någon hjälpa mig!!

Tack på förhand!

Medlem sedan juni 200032 967 inlägg
#2

Med inner join får du bara ut poster där joinvillkoret uppfylls. Du ska använda en outer join annars.

*Pekar också mot SQL-forumet.*

Medlem sedan nov. 2000857 inlägg
#3

Flyttas till "Databaser > SQL"..

Medlem sedan feb. 2003234 inlägg
#4

--

--

256 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
116 ms — ändringar (db)