webForumDet fria alternativet

statistiktabell group by / order by

4 svar · 271 visningar · startad av Dies_Irae

Dies_IraeMedlem sedan aug. 2001145 inlägg
#1

Hej,

Har en statistiktabel som lägger till en nytt inlägg för varje klick på en produkt

Tabellen ser ut ungefär såhär (Har inte koderna här så kan tyvärr inte visa exakt)

added(datetime), product_id(int)

product_id är alltså id på själva produkten man klickar på så tabellen kan se ut såhär:

added		product_id
feb		1
feb		1
feb		4
jan		4
jan		3
jan		3

Alltså 2 klick på varje produkt under jan/feb.

Nu vill jag dra ut en lista som grupperas efter tex månader och produktid

SELECT 
	month(added), product_id
	count(*) as hits
FROM 
	stats
GROUP BY month(added), product_id
ORDER BY added DESC, hits DESC

Hur löser man detta egentligen? Det över (Om jag nu skrev rätt) sorterar endast efter added

Listan blir då typ typ:

added		product_id	hits
feb		1		2
feb		4		1
jan		4		1
jan		3		2

Den Sorteras alltså rätt för datumet, men sen att få hits:en i order per månad funkar inte.

Ursäkta att jag är usel på att förklara, hoppas någon fattar annars får ni hojta till så får jag göra ett nytt försök

LarsGMedlem sedan dec. 200012 464 inlägg
#2
...
order by month(added) desc ...

Om du har group by så kan du inte sortera på något som du inte gör select på.

Dies_IraeMedlem sedan aug. 2001145 inlägg
#3

Tack, klantigt.. Lite konstigt att den endå sorterade rätt på added men inte hits endå väll? hits va ju i select men inte added

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Din sqlsats borde inte godkännas av kompilatorn.

Sorteringen sker på hela datumet men du vet inte vilket datum.

added product_id
2007-02-22 1
2007-02-22 1
2007-02-23 4
2007-01-12 4
2007-01-11 3
2007-01-13 3

Om du har ovanstående, vilket datum för produkt 3 skall användas när man sorterar?

Dies_IraeMedlem sedan aug. 2001145 inlägg
#5

Ja de e sant, fast fick aldrig nått felmeddelande, listan kom ju tom fram datumsorterad så antar att de bara va en tillfällighet :)

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)