Questione : Codificare nell'analisi/che funziona di SQL 2000 nell'analizzatore di domanda di SQL 2005

Ho controllato già questo: http://www.experts-exchange.com/Microsoft/Development/MS-SQL-Server/SQL-Server-2005/Q_22554152.html?sfQueryTermInfo=1+10+2000+2005+30+code+doesnt+sql+work

Il codice sotto analizza/esegue benissimo nello SQL 2000 ma non in 2005 ho esaminato ancora la sintassi nella difficoltà in linea del cant dei libri di SQL 2005:

selezionare A.ClientID, A.ClientSince,
 sommare (caso quando B.ProductCode = “Product1„ allora 1 estremità) Product1,
 sommare (caso quando B.ProductCode = “Product2„ allora 1 estremità) Prodcut2
dai clienti A
la parte di sinistra unisce i clienti B su A.ClientID = B.ClientID
DOVE (A.ClientSince <>E (B.CommenceDate <>E B.AccountBal > 0
gruppo da A.ClientID, A.ClientSince
ordine da A.ClientID

l'errore è: Msg 102, Livello 15, condizione 1, linea 2
Sintassi errata vicino ''.

quale è sulla linea:  somma (caso quando B.ProductCode = “Product1„ allora 1 estremità) Product1,

quando funziono senza le dichiarazioni che di caso funziona benissimo - chiunque sa riparare???

Risposta : Codificare nell'analisi/che funziona di SQL 2000 nell'analizzatore di domanda di SQL 2005

Sopra il codice dovrebbe funzionare in assistente 2005 di SQL e provare questo
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
selezionare A.ClientID, A.ClientSince,
 sommare (caso quando B.ProductCode = “Product1„ allora 1 altrimenti 0 estremità) Product1,
 sommare (caso quando B.ProductCode = “Product2„ allora 1 altrimenti 0 estremità) Prodcut2
dai clienti A
la parte di sinistra unisce i clienti B su A.ClientID = B.ClientID
DOVE (A.ClientSince <> 0
gruppo da A.ClientID, A.ClientSince
ordine da A.ClientID
Altre soluzioni  
 
programming4us programming4us