Vraag : SQL 2000 die - TELLING, niet SOM krijgen

Gelieve te merken op dat dit SQL 2000

I wil is zien hoeveel bezoekers meer dan eens hebben geroepen. Ik wil niet de SOM krijgen. Bijvoorbeeld, als ik een telefoonaantal. .i tweemaal heb deze persoon heeft kennen. .so tweemaal geroepen het als telt. Als somone binnen 10 keer heeft geroepen, dat weet ik deze persoon ook binnen… etc

I heeft meer dan eens hieronder SQL heeft geroepen. Voor deze bezoeker originatorDN = „11111“… heb ik 2 rijen voor „11111“. Zo, heeft deze persoon tweemaal geroepen. .so dit telefoonaantal zou moeten worden geteld aangezien één…

This is wat ik heb:
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
declare @startdate als datetime
verklaar @enddate als datetime

plaats @startdate = „2010-07-29“
plaats @enddate = „2010-07-29“

selecteer maximum geval (ccdr.callednumber) wanneer „eind 5900“ toen „NX“ anders „NX“ als bedrijf 
            --, maximum (ccdr.originatorDN) -- zie verder, probeerde SOM en TELLING
            , isnull (som (geval wanneer ccdr.originatorDN <> '' toen 1 anders eind 0), 0) -- probeerde dit
        
 van db_cra.dbo.ContactCallDetail ccdr 
      binnen SLUIT me aan bij ContactQueueDetail cqd OP cqd.sessionID = ccdr.sessionid 
  WAAR ccdr.startDateTime >= DATEADD (dd, 0, DATEDIFF (dd, 0, @startdate)) 
         EN ccdr.startDateTime < DATEADD (dd, 0, DATEDIFF (dd, 0, @enddate +1)) 
         EN applicationName = „Leiding“ 
         EN ccdr.callednumber BINNEN („5900“) en originatorDN = „11111“
 groep door ccdr.originatorDN
  hebbend telling (ccdr.originatorDn) > 1

Ik krijg

NX 2

Ik zou moeten krijgen
NX 1

Antwoord : SQL 2000 die - TELLING, niet SOM krijgen

Hoop dit is wat u vereist:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
verklaar @startdate als datetime
verklaar @enddate als datetime

plaats @startdate = „2010-07-29“
plaats @enddate = „2010-07-29“

selecteer maximum geval (ccdr.callednumber) wanneer „eind 5900“ toen „NX“ anders „NX“ als bedrijf 
            , 1 cnt -- probeerde dit
        
 van db_cra.dbo.ContactCallDetail ccdr 
      binnen SLUIT me aan bij ContactQueueDetail cqd OP cqd.sessionID = ccdr.sessionid 
  WAAR  ccdr.startDateTime >= DATEADD (dd, 0, DATEDIFF (dd, 0, @startdate)) 
         EN ccdr.startDateTime < DATEADD=""> 1
Andere oplossingen  
 
programming4us programming4us