ugrás a tartalomhoz

Két COUNT és azok összeadása egy lekérdezésben

wintercounter · 2009. Feb. 19. (Cs), 01.36
Hello!

Gondoltam nem nyitok új topicot neki, hiszen az én problémám is hasonló:
SELECT t.board_id forum_id, t.topic_id, p.post_id, count(t.topic_id) as topic_total, count(p.post_id) as post_total 
  FROM mu2_forum_topics as t 
  LEFT JOIN mu2_forum_posts AS p 
  ON t.board_id=p.board_id 
  GROUP BY t.board_id 
  ORDER BY total_entry DESC 
  LIMIT 10
Ez egy fórum része. A lényeg az lenne, hogy ezen az oldalon több fórum is van (teljesen különálló oldalként). Minden fórumnak van egy egyedi ID-je.

A fórumoknak a témái és hozzászólásai is külön-külön táblában vannak.

Azt akarom elérni EGY lekérdezéssel, hogy Kiírom a Forum ID-t és mellé a témák, és a hozzászólások számát. Láthattok egy olyat, hogy ORDER BY total_entry DESC, nos ez meg a két count összege lesz, tehát kiírja, hogy az adott ID (fórum) hány bejegyzéssel rendelkezik (topic+hozzászólás), de ez még csak a jövő kérdése, mivel alapból itt megakadtam, de ebben is elfogadok segítségeket.

Sajnos a fenti query-vel és még sok másikkal is az alábbi eredményt kaptam (nah meg egy csomó más nagy számot):

{forum_id} {topic_total} {post_total}
13 | 43663 | 43663
15 | 14196 | 14196
7 | 1520 | 1520
5 | 462 | 462
8 | 210 | 210
17 | 204 | 204
6 | 172 | 172
16 | 73 | 0
1 | 36 | 36
9 | 30 | 30

Tehát a lényeg ugyan az, hogy ezt kiírjam, csak végre a valós eredményekkel... Utána meg jöhet a két COUNT összeadása, de amint mondtam csak ez után.

A segítségeket előre is köszönöm!
 
1

Én ezt teljesen máskép

Tanul0 · 2009. Feb. 19. (Cs), 08.37
Én ezt teljesen máskép csináltam. Én minden táblába beletettem egy + id mezőt amivel vissza lehet keresni, hogy melyik hova tartozik. Tehát kb így néz ki

kategoria

katID
katnev
katinfo
datum
moderatorsID

forum

forumID
forumnev
foruminfo
datum
moderatorsID
katID

topic

topicID
topicnev
topicinfo
datum
moderatorsID
forumID
katID

posts

postID
userID
post
datum
valasz
topicID
forumID
katID

innen már csak számolni kell, összeadni meg kivonni.
lehet sok a felesleges adat, de így nem kellet sokat bonyolítanom és így a linkelést is könnyebben meg tudtam oldani, + moderátor/admin megjegyzés bármihez
2

ez nem sokat segít

wintercounter · 2009. Feb. 19. (Cs), 11.01
Oda akartam írni a végére (csak elfelejtettem) hogy nem vagyok jártas az egészben, kezdő vagyok. Ez nem saját rendszer, hanem egy meglévő fórummotor, csak a sablonokban lehet SQL lekérdezéseket használni... Csak ki akarom kírni, a TOP 10 fórumot bejegyzések alapján... De ha nincs más akkor két különböző statisztika lesz, egy hozzászólás alapján egy pedig a témák alapján.
3

volt

gex · 2009. Feb. 19. (Cs), 11.32
ha kerestél volna akkor megtaláltad volna ezt a problémát, ami majdnem ugyanaz mint a tiéd. ott írtam egy kis magyarázatot és megoldást is.