SoMeOnEMedlem sedan nov. 200254 inlägg Jag har gjort ett litet forum och försöker göra så den skriver ut hur många svar som har skrivits i det. Problemet är att den bara ska räkna dom som är replies och är i rätt forum. så här ser databasen ut:
-ID
-Master *på svar är "Master" trådens ID och på tråden är "Master" satt till forumets ID
-Reply *1 betyder att det är en ny tråd och 0 att det är ett svar
Det jag skulle vilja göra är att den tar alla poster som har rätt forum som master och har Reply 0 (alltså dom som inte är svar) ta allas deras IDn och sen göra en ny sökning och välja alla som har master satt till dom IDna och Reply 1 (alltså är svar). Jag skulle kunna göra allt med lopar med vill fråga först ifall det är ngn som vet hur man kan göra på ngn enklare sätt med sql.
En länk ifall ni vill kolla hur det ser ut nu
LarsGMedlem sedan dec. 200012 464 inlägg select master,count(*)
from t
where reply = 1
and master in (select id from t
where reply = 0
and master = <forumid>)
group by master
Om jag nu har förstått din datamodell riktigt.
SoMeOnEMedlem sedan nov. 200254 inlägg Tack Lars, jag visst inte att man kunde göra så i sql, ngt nytt lär man sig varje dag :).
SoMeOnEMedlem sedan nov. 200254 inlägg Jag vet inte riktigt vad som är fel:
Du har något fel i din syntax nära 'select ID from x2dforumtopics where Reply = 0 and m' på rad 4
rad 4 är alltså "and master in (select id from t" vad är felet?
Ifall någon skulle kunna ge en länk till en sida där mna förklarar lite närmare vad "in" gör så skulle det vara snällt, alla sidor jag hittar förklarar bara grund sakerna.
@ndersMedlem sedan juni 200032 969 inlägg Får man gissa på att du använder MySQL? MySQL stödjer inte subqueries förrän version 4.1. Om du kör en lägre version av MySQL, har du möjlighet att uppgradera?
(Ett bra tips är att alltid ange vilken dbms man använder, eftersom svaren/lösningarna kan skilja en hel del.)
SoMeOnEMedlem sedan nov. 200254 inlägg Ok, jag trodde jag hade den nyaste versionen av mysql. Desutom testade jag att ladda upp det på b-one, jag tycker att dom borde ha den nyaste versioen men jag får samma fel där.
K@llenMedlem sedan mars 20032 667 inlägg
SoMeOnE skrev:
Ok, jag trodde jag hade den nyaste versionen av mysql. Desutom testade jag att ladda upp det på b-one, jag tycker att dom borde ha den nyaste versioen men jag får samma fel där.
Inte troligt att webbhotellet uppgraderar förrän mysql-versionen är stabil. :)