Ik zit met de volgende uitdaging voor mijzelf. Ik wil een query maken die:
1. Het aantal hits telt op mijn site (dus alle logs tellen)
2. Het aantal unieke bezoekers tellen (dus tellen op basis van (DISTINCT(ipadres))
3. Het aantal bezoekers tellen (dus tellen op basis van (DISTINCT(sessie))
Deze tellingen vind je terug in onderstaande code en werken.
SELECT
COUNT(DISTINCT(sessie)) AS aantalbezoeken,
COUNT(DISTINCT(ipadres)) AS aantaluniek,
COUNT(id) AS aantalhits
FROM
ove_logfile
WHERE
MONTH(datum) = '$nMeetMaand' AND YEAR(datum) = '$nMeetJaar'
Deze tellingen zijn van toepassing op het publieke deel van de site en werken.
Nu wil ik ook dezelfde tellingen gaan uitvoeren op het afgeschermde deel van de site, het deel waarvoor je dus moet inloggen.
In de logfile is hier het veld <lid> voor beschikbaar die dan gevuld is met "Ja" (anders "Nee")
Mijn vraag is dus nu: Hoe voeg ik deze voorwaarde toe aan mijn query;
SELECT
COUNT(DISTINCT(sessie)) AS aantalbezoeken,
COUNT(DISTINCT(ipadres)) AS aantaluniek,
COUNT(IF(lid = 'Nee','Ja',NULL)) AS aantalhits,
COUNT(IF(lid = 'Ja','Ja',NULL)) AS ingelogd
FROM
ove_logfile
WHERE
MONTH(datum) = '10' AND YEAR(datum) = '2013'
Het tellen van ingelogd lukt wel maar hoe krijg ik nu de voorwaarde van de DISTINCT in combinatie met de voorwaarde van lid in dezze query?
Wie helpt mij?
George