2017-09-13 4 views
1

Avez-parcouru l'Internet pour une bonne réponse, mais je ne trouve pas ce que je veux.Nombre de ventes partitionné par DOW (avec la date et l'heure en entrée) - postgresql

J'ai un ensemble de données exemple comme suit:

Date de --------------------------------- nombre de ventes

Saturday 9th September 13:22:00 ------ 1 
Sunday 10th September 16:44:02 ------ 3 
Monday 11th September 12:00:00 ------ 2 
Tuesday 12th September 13:04:34 ------ 4 
Wednesday 13th September 15:84:04 ---- 3 
Thursday 14th September 16:30:00 ----- 9 
Friday 15th September 17:00:00 ------ 3 
Saturday 16th September 18:00:03 ----- 5 
Sunday 17th September 12:00:34 ------- 2 

Je veux que la sortie soit une table comme suit:

Day of week -------------- Count 
Mon ---------------------- 2 
Tues --------------------- 4 
Wed ---------------------- 3 
Thurs -------------------- 9 
Fri ---------------------- 3 
Sat ---------------------- 6 
Sun ---------------------- 5 

Ceci est un petit échantillon, les dates vont beaucoup plus loin, mais cela devrait vous donner une idée.

J'utilise PostreSQL version 9.5.8

J'ai essayé différentes variantes telles que date_trunc, et la partition (mais peut-être ne l'utilise pas correctement). Je continue à obtenir la mauvaise sortie. Essentiellement, je veux être en mesure de faire un graphique à barres du jour de la semaine et compte.

Ive a essayé ceci:

SELECT count(s.created_at), date_trunc('day', s.created_at) 
FROM "sales" s 
GROUP BY date_trunc('day', s.created_at) 

Cela me donne cependant le nombre par jour unique plutôt que simplement par dow, quelle que soit la date.

Merci à l'avance.

+0

avez-vous essayé de regrouper par dow .. Je veux dire ne vois pas ce qui pourrait mal tourner, s'il vous plaît mettre vos tentatives au poste –

+0

I voir maintenant - vous avez essayé de tronquer la date à un certain niveau. mon mauvais n'a pas fait attention –

Répondre