query met group en count
rudie dirkx
11/12/2006 23:52:00Ik heb een hele stomme vraag... Maar ik ben ineens helemaal kwijt hoe de query moet zijn...
Ik heb een tabel met 2 belangrijke veldjes: uid, ip
de combinatie daarvan kan unlimited voorkomen en ook uid en ip apart unlimited. Absoluut geen restricties dus. Het is een logboek tabelletje. Heel smal, heel lang.
Wat ik wil is achterhalen welk IP bij welk UID hoort, maar omdat een UID meerdere IPs kan hebben (en een IP meerdere UIDs) moet het met een subquery (toch?).
Wat ik terug wil is voor elke UID het aantal IPs dat in de tabel staat. Dat is stap 1. Dat moet ongelooflijk makkelijk zijn, maar ik kan er toch ff niet op komen :)
Iets met group by UID en dan een count... Maar wil alleen het aantal verschillende IPs, niet het aantal rijen voor het UID.
Stomme vraag, maar weet iemand het :D
De volgende stap is dat ik alleen de userinfo terug wil van de UIDs die met meer dan 1 IP in de tabel staan. Dat moet wel met subquery toch?
Bedankt voor hulp!
mzl
Rudie
Ik heb een tabel met 2 belangrijke veldjes: uid, ip
de combinatie daarvan kan unlimited voorkomen en ook uid en ip apart unlimited. Absoluut geen restricties dus. Het is een logboek tabelletje. Heel smal, heel lang.
Wat ik wil is achterhalen welk IP bij welk UID hoort, maar omdat een UID meerdere IPs kan hebben (en een IP meerdere UIDs) moet het met een subquery (toch?).
Wat ik terug wil is voor elke UID het aantal IPs dat in de tabel staat. Dat is stap 1. Dat moet ongelooflijk makkelijk zijn, maar ik kan er toch ff niet op komen :)
Iets met group by UID en dan een count... Maar wil alleen het aantal verschillende IPs, niet het aantal rijen voor het UID.
Stomme vraag, maar weet iemand het :D
De volgende stap is dat ik alleen de userinfo terug wil van de UIDs die met meer dan 1 IP in de tabel staan. Dat moet wel met subquery toch?
Bedankt voor hulp!
mzl
Rudie
PHP hulp
19/11/2024 08:10:59Kalle P
12/12/2006 02:15:00SELECT UID, SUM(IP)
FROM tabel
GROUP BY UID
-----
ik weet niet precies hoe het eruit ziet allemaal in je db
SELECT userinfo
FROM table
WHERE UID =
(SELECT UID
FROM tabel
GROUP BY UID
HAVING SUM(IP) > 1)
Tis laat en mijn oogjes vallen bijna dicht. Kalle gaat naar bed.
Ohja fouten voorbehouden. DANKJE.
Kalle.
FROM tabel
GROUP BY UID
-----
ik weet niet precies hoe het eruit ziet allemaal in je db
SELECT userinfo
FROM table
WHERE UID =
(SELECT UID
FROM tabel
GROUP BY UID
HAVING SUM(IP) > 1)
Tis laat en mijn oogjes vallen bijna dicht. Kalle gaat naar bed.
Ohja fouten voorbehouden. DANKJE.
Kalle.
rudie dirkx
12/12/2006 09:18:00het is sowieso niet SUM... Ik wil mn IP niet optellen...Ik wil tellen hoeveel verschillende er zijn. Heeft niks met optellen te maken.
Ga die tweede wel ff proberen.
mzl en bedankt
Ga die tweede wel ff proberen.
mzl en bedankt
Bo az
12/12/2006 10:12:00Je gaat nog ergens de fout in bij de Query van Kalle.
Door het =-teken in de WHERE, wordt er maar met één resultaat van de subquery vergeleken, je moet WHERE UID IN gebruiken.
Verder denk ik dat je al opschiet als je de SUM door een COUNT vervangt.
Door het =-teken in de WHERE, wordt er maar met één resultaat van de subquery vergeleken, je moet WHERE UID IN gebruiken.
Verder denk ik dat je al opschiet als je de SUM door een COUNT vervangt.