SQL Distinct maar ook extra non-distinct kolommen

  • Onderwerp starter Onderwerp starter tanab
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.
T

tanab

Hallo iedereen,

Ik loop nu al 2 uur te goochelen met me SQL query maar ik krijg maar niet wat ik wil.

het volgende is er aan de hand, ik ben een CMS systeem aan het bouwen waarbij de client een overzicht kan zien van zijn bezoekers en dergelijke daarbij worden mooie grafiekjes gegenereerd. Deze grafiekjes krijgen data van een database.

Nu ben ik dus met het volgende grafiekje bezig:

Unieke bezoekers per dag.

met op de X-as de tijd in uren.
en de y-as het aantal unieke bezoekers

Hiervoor heb ik een tabel visits die elke visit op deze manier vastlegd,

id, ip, datum, tijd, linked_by

wat wil ik nu dus:

een query waarbij kijkt per dag, per uur hoeveel unieke ip's er langs zijn gekomen. en hiervan wil ik dus wel alle data hebben die in de rij staat. (dus id,ip,datum,tijd,linked_by)

hier even een deeltje van de tabel voor de duidelijkheid.

Ik hoop van harte dat jullie mij kunnen helpen

Code:
860 	83.85.170.44 	21-04-2011 	00:41:55 	0
859 	83.85.170.44 	21-04-2011 	00:41:54 	0
858 	83.85.170.44 	21-04-2011 	00:41:54 	0
857 	83.85.170.44 	21-04-2011 	00:41:53 	0
856 	83.85.170.44 	21-04-2011 	00:41:52 	0
855 	83.178.104.231 	21-04-2011 	00:24:55 	0
854 	83.85.170.44 	21-04-2011 	00:22:05 	0
853 	83.85.170.44 	21-04-2011 	00:22:04 	0
852 	83.85.170.44 	21-04-2011 	00:22:02 	0
851 	83.85.170.44 	21-04-2011 	00:21:59 	0
850 	83.85.170.44 	21-04-2011 	00:05:33 	0
849 	83.85.170.44 	21-04-2011 	00:05:32
 
Ik weet niet hoe je dat voor je ziet, maar dat wordt geen rechthoekige tabel, dus dat kan niet in 1 query. Als je gewoon DISTINCT doet krijg je van elk uniek ip 1 rij te zien, maar je kunt niet 100 ips terug krijgen met in totaal 200 rijen respons... zo werkt SQL niet.
 
Dat is ook niet wat ik bedoel.

Ik wil gewoon per uur van de dag weten hoeveel uniek ip's er langs zijn gekomen.
want wanneer ik nu DISTINCT ip doe krijg ik alleen de kolom ip terug daar kan ik niks mee ik wil ook graag de bijbehorende tijd en datum krijgen.
 
Je kunt gewoon overige velden in de select zetten hoor.

[sql]
SELECT DISTINCT(ip), id, datum
FROM tabel
[/sql]
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan