Avatar billede latrell Nybegynder
09. januar 2007 - 23:17 Der er 14 kommentarer og
1 løsning

Tælle forekomster

Hej Eksperter!

Jeg er ved at lave et debat system, men er imidlertidig stødt på et problem. Jeg vil gerne have talt hvor mange _forskellige_ brugere der har deltaget i debatten, ud fra kolonnen "forfatter", som er brugerens id.

Kan I hjælpe?

På forhånd tak :-)
Avatar billede kalp Novice
09. januar 2007 - 23:18 #1
SELECT COUNT(forfatter) as antal FROM dinTabeller WHERE join blah blah;

så ligger antallet af deltager i variablen antal..

vi har jo ikke nok info til at lave en komplet sql, men det der er jo pænt meget forklaret hvis du kender lidt til sql
Avatar billede latrell Nybegynder
09. januar 2007 - 23:21 #2
Jeg har 2 rækker:

Debat
Debatkommentarer

Hvor systemet henter debatkommentarer ud fra debat's ID. Så vil jeg gerne have talt hvor mange forskellige forfattere der har postet et indlæg til debatten. Jeg håber det var mere nyttigt info :-)
Avatar billede kalp Novice
09. januar 2007 - 23:25 #3
Du mener vel tabeller? Du skal være meget præcis i det du skriver herinde så du kan få bedst mulig svar fra os per indlæg vi sender dig=)

men endnu vigtigere.. hvis du lige kan fortælle hvilke kolonner der er i de 2 tabeller så skal jeg give dig sql'en  i næste indlæg
Avatar billede timothy Nybegynder
09. januar 2007 - 23:28 #4
Personligt blev det ikke klarere for mit vedkommende...

Ser din tabel således ud?

DebatID, Debat, Debatkommentar, forfatter?

Så er ovenstående ikke helt rigtig, der tæller du ALLE indlæg måske er det noget hen af SELECT (COUNT(DISTINCT forfatter)) FROM ..... du skal bruge
Avatar billede latrell Nybegynder
09. januar 2007 - 23:30 #5
Ah undskyld, jeg er bare først ved at lære PHP og MySQL, men jeg skal nok prøve at være så præcis som mulig :)

Debat:

- id
- overskrift
- tekst
- tid
- senestopdateret
- ip
- forfatter
- lukket

Debat_kommentarer:

- id
- idid (debattens id)
- tekst
- forfatter
- ip
- tid

:-)
Avatar billede latrell Nybegynder
09. januar 2007 - 23:31 #6
Hvor jeg jo så vil tælle hvor mange forskellige forfattere der har været med et givent idid under debat_kommentarer :-)
Avatar billede kalp Novice
09. januar 2007 - 23:36 #7
SELECT COUNT(DISTINCT(Debat_kommentarer.forfatter)) as antal FROM Debat_kommentarer, Debat WHERE Debat.id = Debat_kommentarer.idid;
Avatar billede latrell Nybegynder
09. januar 2007 - 23:46 #8
Lige hvad jeg manglede!

Det er rart man kan komme her og få hjælp :-)

Mange tak for hjælpen, kommer der et svar? :)
Avatar billede kalp Novice
09. januar 2007 - 23:47 #9
selv tak...
timothy du kan også ligge et svar hvis du vil have del i pointene.. overså helt DISTRINCT i mit første eksempel fordi jeg fokuserede mere på at påpege vigtigheden i at beskrive en problemstilling detaljeret:)

mvh
Avatar billede latrell Nybegynder
09. januar 2007 - 23:48 #10
Jeg venter lige på respons fra timothy så :-)
Avatar billede latrell Nybegynder
09. januar 2007 - 23:57 #11
Jeg har dog opdaget at der er sneget sig en fejl ind.

Uanset hvilken debat jeg vælger, tæller den det antal indlæg der er skrevet til den først oprettede debat.
Avatar billede kalp Novice
10. januar 2007 - 00:04 #12
SELECT COUNT(DISTINCT(Debat_kommentarer.forfatter)) as antal FROM Debat_kommentarer, Debat WHERE Debat.id = Debat_kommentarer.idid AND Debat.id = XXXX;

hvis du erstatter xxxx med det ID du er interesseret i så virker det.. men kan næsten regne ud du har lavet et andet kald til at udskrive emnerne... så har du nok også adgang til ID der.. så skal det erstatte XXXX
Avatar billede latrell Nybegynder
10. januar 2007 - 00:07 #13
Så virkede det - tak' så ha' :-)
Avatar billede kalp Novice
10. januar 2007 - 00:14 #14
ingen årsag=)
Avatar billede timothy Nybegynder
10. januar 2007 - 10:23 #15
Hej :-)
Tja, svar kan jeg ikke få lov til at lægge, men selv tak...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester