sql >> Databasteknik >  >> RDS >> Mysql

Skapa en fråga för att få antalet ej slutförda samtal, gruppera i 2 fält

Du kan gå med i tabellen med en samlad fråga som hämtar den minsta call_time par call_id av oavslutade samtal. Ett oavslutat samtal är ett samtal som inte har någon post där proceed_wait = 0 .

select t.queue_num_curr, t.ast_num_curr, count(*)
from mytable t
inner join (
    select call_id, min(call_time) call_time
    from mytable 
    group by call_id
    having max(proceed_wait = 0) = 0
) tmin on tmin.call_id = t.call_id and tmin.call_time = t.call_time
group by t.queue_num_curr, t.ast_num_curr
order by t.queue_num_curr, t.ast_num_curr

Demo på DB Fiddle :

queue_num_curr | ast_num_curr | count(*)
-------------: | -----------: | -------:
          9004 |            2 |        1
          9010 |            2 |        2
          9010 |            3 |        1
          9010 |            5 |        1

OBS:Jag tror att queue_num = 9004 i resultaten bör ha ast_num = 2 istället för 1 (som ska motsvara call_id 49c43ad ).




  1. Varning:mysqli_connect():(HY000/1049):Okänd databas endast i Mac-terminalen

  2. Skaffa anställda som ligger under genomsnittslönen efter en löneförhöjning

  3. Lagrar datetime som UTC i PHP/MySQL

  4. hur visar man fullständig lagrad procedurkod?