Vraag : Lijst van de update basxed op resultaten van vraag

Deskundigen, heb ik de volgende temperaturenlijst @tmpContacts:

ContactID   ClientID   NumContactsNeeded   NumContactsMade   TimePeriod
   -    
1 die 3 2 ONGELDIGE Day
2 4 1 ONGELDIGE Week
3 5 1 ONGELDIGE Month

I am proberen het gebied bij te werken NumContactsMade die de volgende vraag gebruiken:

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
UPDATE @tmpContacts
VASTGESTELDE NumContactsMade = b.Contacts VAN
	(
		SELECTEER ClientID, SOM (Contacten) ALS Contacten 
		VAN 
			(
				SELECTEER ClientID, TEL (Client_Contact_Tbl.ClientID) ALS Contacten
				VAN Client_Contact_Tbl
				GROEP DOOR ClientID, Contact_Status, ContactDate
				HEBBEN van Contact_Status IS NIET ONGELDIG EN ContactDate >= „6/20/2010“
			) a
		GROEP DOOR a.ClientID
	) B, @tmpContacts


Which geeft me de volgende resultaten:

ContactID   ClientID   NumContactsNeeded   NumContactsMade   TimePeriod
   -    
1 3 2 1 Day
2 4 1 1 Week
3 5 1 1 Month

However, zou de resultaten moeten zijn:

ContactID   ClientID   NumContactsNeeded   NumContactsMade   TimePeriod
   -    
1 3 2 1 Day
2 4 1 2 Week
3 5 1 ONGELDIGE Month

Since de resultaten van de subvraag zijn:

ClientID   Contacts
 
3 1
4 2
13 1

What ben doen van I verkeerd?

Antwoord : Lijst van de update basxed op resultaten van vraag

update tempAlias
vastgestelde NumContactsMade=Contacts
van
(
            SELECTEER ClientID, SOM (Contacten) ALS Contacten
            VAN
                  (
                        SELECTEER ClientID, TEL (Client_Contact_Tbl.ClientID) ALS Contacten
                        VAN Client_Contact_Tbl
                        GROEP DOOR ClientID, Contact_Status, ContactDate
                        HEBBEN van Contact_Status IS NIET ONGELDIG EN ContactDate >= „6/20/2010“
                  ) a
            GROEP DOOR a.ClientID
) derivedTable
sluit me aan @tempContacts bij tempAlias op derivedTable.ClientId=tempAlias.ClientId

Syntactisch zou dat correct moeten zijn (hoewel algemeen bekend ik denk het zou kunnen worden schoongemaakt om de afgeleide lijst) te elimineren.  Logisch gezien ben ik benieuwd of uw zou subquery zich op contactid eerder dan cliëntidentiteitskaart moeten groeperen, maar ik veronderstel als het contact en de cliënt 1:1 zijn het niet van belang zal zijn.
Andere oplossingen  
 
programming4us programming4us