Vraag over query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

George van Baasbank

George van Baasbank

24/03/2015 18:55:39
Quote Anchor link
Hallo allemaal,

Met behulp van onderstaande query toon ik alle UNIEKE bezoekers van mijn site per dag.
Nu wil ik hier graag een telling aan toevoegen die het resultaat geeft van het aantal malen dat deze bezoeker vandaag de site bezocht heeft:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
$sql = "
SELECT
   *
FROM
   sys__logfile
WHERE
   robot = 0 AND
   YEAR(datum) = '$nJaar' AND MONTH(datum) = '$nMaand' AND DAY(datum) = '$nDag'
GROUP BY
   ipadres
ORDER BY
   datum";


Hoe moet ik dit doen??

George
 
PHP hulp

PHP hulp

22/12/2024 07:44:16
 
NOLot -

NOLot -

24/03/2015 19:16:22
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
SELECT *, COUNT(ipadres) as aantal FROM sys__logfile
WHERE robot = 0 AND YEAR(datum) = '$nJaar' AND MONTH(datum) = '$nMaand' AND DAY(datum) = '$nDag'
GROUP BY ipadres
ORDER BY datum
 
Ivo P

Ivo P

24/03/2015 19:19:59
Quote Anchor link
Nooit select * combineren met count()
 
NOLot -

NOLot -

24/03/2015 19:22:23
Quote Anchor link
Ik kan vanaf hier niet ruiken welke velden hij nodig heeft he :)
 
George van Baasbank

George van Baasbank

24/03/2015 19:28:34
Quote Anchor link
Wat jullie niet konden weten is het volgende:

1. Ik leg elke beweging vast
2. Ik noteer het php-sessienr
3. Ik noteer het ipadres
Daarnaast nog meer maar dat doet niet ter zake.

De gegeven oplossing geeft nu het aantal page-views.
Ik ben eigenlijk op zoek naar het aantal hits. Dus de telling zou op basis van het unieke sessienr moeten plaatsvinden.
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

24/03/2015 20:10:30
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
SELECT
    ipadres,
    COUNT(DISTINCT sessienr)
FROM
    sys__logfile
WHERE
    datum BETWEEN '$year-$month-$day 00:00:00' AND '$year-$month-$day 23:59:59'
GROUP BY ipadres

Ik heb er gelijk ook even een WHERE clause van gemaakt die indexen kan gebruiken.
Gewijzigd op 24/03/2015 20:10:52 door Ger van Steenderen
 
George van Baasbank

George van Baasbank

24/03/2015 20:11:37
Quote Anchor link
Deze geeft als foutmelding dat de subquery meer dan 1 regel teruggeeft

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
SELECT
   * ,
(SELECT COUNT(b.id) FROM sys__logfile as b GROUP BY b.sessie)
FROM
   sys__logfile
WHERE
   robot = 0 AND
   YEAR(datum) = '2015' AND MONTH(datum) = '3' AND DAY(datum) = '24'
GROUP BY
   ipadres
ORDER BY
   datum


Toevoeging op 24/03/2015 20:13:44:

Ger,

Hoe simpel kan het zijn.

Bedankt !!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.