Ciao a tutti.
Sono nuovo di t SQL ma mi trovo a dover far evolvere un db di access a SQL server. VI spiego il problema:
questa e' la query access:
SELECT Nz(Sum(IIf([buy/Sell]="BUY",[Amount]*[price],-[Amount]*[price])),0) AS [Sum_lorda], CCur(Nz(Sum([equity_deals].[Commission]),0)) AS Commission, CCur(Nz([Sum_lorda]+[Commission],0)) AS Countervalue
FROM Equity_deals
WHERE (((Equity_deals.ValueDate)<=[Valuation Date]))
in sostanza calcola una somma di quantita', chiamata [sum_lorda], una delle commissioni [commission] e sulla terza Colonna fa semplicemente la somma di [sum_lorda] e [commission]
questo lo script t sql:
SELECT sum(IIf([Equity_deals].[Buy/Sell]='BUY',[Amount]*[price],-[Amount]*[price])) as Somma_lorda, Sum([equity_deals].[Commission]) AS Commission, (Somma_lorda+Commission) AS Countervalue
FROM Equity_deals
WHERE (((Equity_deals.ValueDate)<='2015-03-15'))
ci sono due tipi di errore:
il primo riguarda la terza Colonna che si ottiene come Somma_lorda+commission e genera il seguente messaggio:"messaggio 207, livello 16 stato1 riga 1: il nome Colonna 'somma_lorda' non e' valido." Sembra che si incavoli perche' (Somma_lorda+Commission) li interpreta come due stringhe...
se infatti metto tra apice Somma_lorda e Commission non da errore, ma ovviamente riporta nel terzo campo "Somma_lordaCommission" che non e'cio che voglio.
il secondo errore lo genera la condizione WHERE che genera:"Messaggio 242, livello 16, stato 3, riga 1
La conversione di un tipo di dati varchar in datetime ha generato un valore non compreso nell'intervallo dei valori consentiti.
"
e questo errore non ho proprio idea di come risolverlo...
qualcuno mi sa indicare come uscirne? grazie mille!