Jag vill ha en tabell liknande denna:
Name|Trådar|Inlägg
Name = från tabellen
Trådar = antalet trådar för det aktuella namnet(id:t), CategoryID = Category. Och RotID = 0
Inlägg = samma som över men endast CategoryId=Category
Har denna kod:
SELECT
`forum`.`Category`,
count(*) AS `NumbPost`
FROM
`forum`,
`forumcategory`
WHERE
(`forumcategory`.`ModuleID` = '2') AND
(`forumcategory`.`CategoryID` = `forum`.`Category`)
GROUP BY
`forum`.`Category`
Men den ger mig inte antalet trådar, kan ju lägga till RotID=0 dvs att den ger mig alla trådar men då får jag inte de andra, alla posterna.
Är ingen expert på detta som kanske märks...
/(MySql)
SELECT
forum.Category,
sum(case when RotId = 0 then 1 else 0 end) as NumbCat,
count(*) AS NumbPost
FROM forum, forumcategory
WHERE forumcategory.ModuleID = 2
AND forumcategory.CategoryID = forum.Category
GROUP BY forum.Category
Ahh nu fungerar det som det ska. Kör asp.net och EMS Mysql Manager 2 och då får jag felmeddelandet. Satsen verkar vara för avancerad för QueryBuilder där.
Har stött på problem. Om jag inte har några poster i forum, men därimot poster i kategorier så visas inte dessa. Ahh, kanske får bli att bygga om allt ihop!
SELECT
forum.Category,
sum(case when RotId = 0 then 1 else 0 end) as NumbCat,
count(forum.category) AS NumbPost
FROM forumcategory left outer join forum
on forumcategory.CategoryID = forum.Category
WHERE forumcategory.ModuleID = 2
GROUP BY forum.Category
646 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91