Question : SQL 2000 - Obtenant le COMPTE, pas SOMME

Veuillez noter que c'est le SQL 2000

I veulent voir combien les visiteurs ont appelé plus d'une fois. Je ne veux pas obtenir la SOMME. Par exemple, si je fais savoir un numéro de téléphone deux fois. .i cette personne a appelé deux fois. .so qu'il compte en tant qu'un. Si le somone a appelé dans 10, cela que je sais que cette personne a également appelé dans plus d'une fois… etc

I ont le SQL ci-dessous. Pour cet originatorDN de visiteur = « 11111 »… je prends 2 rangées pour « 11111 ». Ainsi, cette personne a appelé deux fois. est .so que ce numéro de téléphone devrait être compté en tant qu'un…

This ce que j'ai :
class= > " clair " de
> de " codeSnippet " de class= de
class= " lineNumbers " de
class= de
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 :
@startdate " de " codeSnippet857064 d'id= " de
declare de class= en tant que date-heure
déclarer le @enddate en tant que date-heure

placer le @startdate = « 2010-07-29 »
placer le @enddate = « 2010-07-29 »

choisir le cas maximum (ccdr.callednumber) quand extrémité d'autre de « 5900 » puis « NX » de « NX » comme compagnie 
            --, maximum (ccdr.originatorDN) -- voir ci-dessous, SOMME et COMPTE éprouvés
            , isnull (somme (cas quand <> de ccdr.originatorDN '' puis 1 autrement 0 extrémités), 0) -- a essayé ceci
        
 du ccdr de db_cra.dbo.ContactCallDetail 
      intérieur JOINDRE le cqd de ContactQueueDetail SUR cqd.sessionID = ccdr.sessionid 
  LÀ OÙ >= DATEADD (densité double, 0, DATEDIFF (densité double, 0, @startdate) de ccdr.startDateTime) 
         ET ccdr.startDateTime < DATEADD (densité double, 0, DATEDIFF (densité double, 0, @enddate +1)) 
         ET applicationName = « force » 
         ET ccdr.callednumber DEDANS (« 5900 ») et originatorDN = « 11111 »
 groupe par ccdr.originatorDN
  ayant le compte (ccdr.originatorDn) > 1

J'obtiens

NX 2

Je devrais obtenir
NX 1
class= de

Réponse : SQL 2000 - Obtenant le COMPTE, pas SOMME

Espérer qu'est ce de ce que vous avez besoin :
1 :
2 :
3 :
4 :
5 :
6 :
7 :
8 :
9 :
10 :
11 :
12 :
13 :
14 :
15 :
16 :
17 :
déclarer le @startdate en tant que date-heure
déclarer le @enddate en tant que date-heure

placer le @startdate = « 2010-07-29 »
placer le @enddate = « 2010-07-29 »

choisir le cas maximum (ccdr.callednumber) quand extrémité d'autre de « 5900 » puis « NX » de « NX » comme compagnie 
            , 1 cnt -- a essayé ceci
        
 du ccdr de db_cra.dbo.ContactCallDetail 
      intérieur JOINDRE le cqd de ContactQueueDetail SUR cqd.sessionID = ccdr.sessionid 
  LÀ OÙ  >= DATEADD (densité double, 0, DATEDIFF (densité double, 0, @startdate) de ccdr.startDateTime) 
         ET ccdr.startDateTime < DATEADD=""> 1
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us