Solved

How to group by date?

Posted on 2011-09-21
6
161 Views
Last Modified: 2012-06-27
In the following, how do I get a count for each unique day entry on a ticketid for an employee?

In the example below, empid=1 and ticketid=7 would have a count of 3, since it was worked on three different days.  However, empid=1 and ticketid=9 is just one day, since both entries were on 9/17. empid=3 and ticketid=9 is also one day since both entries were on 9/17 as well.
Id   empid   ticketid   datecomplete              ticketsession
4      1         9      2011-09-17 9:12:24.000        3
4      1         9      2011-09-17 9:12:24.000        3
10     1         7      2011-09-15 9:12:24.000        7
19     1         7      2011-09-16 9:12:24.000        7
20     1         7      2011-09-17 11:17:24.000        7
21     3         9      2011-09-17 9:12:24.000        3
21     3         9      2011-09-17 10:12:24.000        3

Open in new window

0
Comment
Question by:brettr
  • 3
  • 3
6 Comments
 
LVL 32

Accepted Solution

by:
ewangoya earned 500 total points
ID: 36576102
try
select empid, CONVERT(varchar(10), datecomplete, 101) datecomplete
from table1
group by empid, CONVERT(varchar(10), datecomplete, 101)

Open in new window

0
 

Author Comment

by:brettr
ID: 36576173
Sorry - accepted too soon.  What I want is the count of 3 for empid=1 and ticketid=7.  The above query keep them on separate rows and doesn't provide a count.
0
 
LVL 32

Expert Comment

by:ewangoya
ID: 36576201
Add the counts to your select query


select empid, count(empid) [Employees], count(tickectid) [tickectid], CONVERT(varchar(10), datecomplete, 101) datecomplete
from table1
group by empid, tickectid, CONVERT(varchar(10), datecomplete, 101)

Open in new window

0
Zoho SalesIQ

Hassle-free live chat software re-imagined for business growth. 2 users, always free.

 

Author Comment

by:brettr
ID: 36576254
That just counts each single row.  So instead of getting 3 for 9/15, 9/16 and 9/17, which were all on the same ticket, you can 1 for each.
0
 
LVL 32

Expert Comment

by:ewangoya
ID: 36576440
Right, you only need one count but group by the two fields

select empid, count(tickectid) [Tickect Count], CONVERT(varchar(10), datecomplete, 101) datecomplete
from table1
group by empid, tickectid, CONVERT(varchar(10), datecomplete, 101)

Open in new window

0
 

Author Comment

by:brettr
ID: 36576457
ok, thanks.
0

Featured Post

Complete Microsoft Windows PC® & Mac Backup

Backup and recovery solutions to protect all your PCs & Mac– on-premises or in remote locations. Acronis backs up entire PC or Mac with patented reliable disk imaging technology and you will be able to restore workstations to a new, dissimilar hardware in minutes.

Join & Write a Comment

by Mark Wills PIVOT is a great facility and solves many an EAV (Entity - Attribute - Value) type transformation where we need the information held as data within a column to become columns in their own right. Now, in some cases that is relatively…
Introduction This article will provide a solution for an error that might occur installing a new SQL 2005 64-bit cluster. This article will assume that you are fully prepared to complete the installation and describes the error as it occurred durin…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …

758 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now