0

I have this data in my database :

nama             tanggal     
ADIESTY.SW       2017-03-01  
ADIESTY.SW       2017-03-01  
ADIESTY.SW       2017-03-02  
ADIESTY.SW       2017-03-02  
ADIESTY.SW       2017-03-03  
ADIESTY.SW       2017-03-03  
ADIESTY.SW       2017-03-05  
ADIESTY.SW       2017-03-05  
ALFRED APDIAN    2017-03-01  
ALFRED APDIAN    2017-03-01  
ALFRED APDIAN    2017-03-02  
ALFRED APDIAN    2017-03-02  
ARI PUTRA        2017-03-01  
ARI PUTRA        2017-03-01  
ARI PUTRA        2017-03-02  
ARI PUTRA        2017-03-02  
ARI PUTRA        2017-03-03  
ARI PUTRA        2017-03-03

How do I count by distinct date (tanggal)? So the result I want is:

    nama         tanggal
ADIESTY.SW        4
ALFRED APDIAN     2
ARI PUTRA         3
Martlark
  • 14,208
  • 13
  • 83
  • 99
Akbar Tri Nanda
  • 71
  • 1
  • 1
  • 6

4 Answers4

10

Use this

select nama,count(distinct tanggal) from your_table
group by nama;

http://rextester.com/ZOZQK78377

Utsav
  • 7,914
  • 2
  • 17
  • 38
1

When you post the question specify the type of database used (Oracle,MySQL,..)

SELECT name, COUNT(*)
FROM yourTable
GROUP BY name
Ahmed
  • 76
  • 8
0

To get that data the query should be

SELECT `name`, COUNT(*) as `count`
FROM `table`
GROUP BY `name`
user1898027
  • 330
  • 2
  • 13
-1

Try this :

         select name,count(name) as count from (
  select 'ADIESTY.SW' as Name,'2017-03-01' as date union
  select 'ADIESTY.SW' as Name,'2017-03-02'as date union
  select 'ADIESTY.SW' as Name,'2017-03-03'as date union
  select 'ADIESTY.SW' as Name,'2017-03-05'as date union
  select 'ALFRED APDIAN'as Name,'2017-03-01'as date union
  select 'ALFRED APDIAN' as Name,'2017-03-02'as date union
  select 'ARI PUTRA' as Name, '2017-03-01'as date union
  select 'ARI PUTRA'  as Name,'2017-03-02'as date union
  select 'ARI PUTRA'  as Name, '2017-03-03'as date
  )t
  group by name