Principale utente con più risposte
Calcolare risultato colonna calcolata gestendo divisioni per zero

Domanda
-
Salve a tutti,devo fare un operazione per voi sicuramente semplicissima ,ma che mi sta creando alcuni problemi. In pratica ho una colonna prezzo (decimal) e una colonna sconto (int)
Dovrei scrivere una query che aggiunga automaticamente una colonna contenente,il prezzo scontato,e in caso di eccezione di divisione per zero mi desse solo il prezzo
una cosa del tipo , select prezzo,sconto, (100*Sconto)/prezzo
in cui se la terza colonna ha sconto = 0 ad esempio, mi dia il solo prezzo
Grazie mille!
- Modificato NikkySixx mercoledì 19 ottobre 2011 14:19
Risposte
-
ALTER PROCEDURE [dbo].[prova_stored_procedure] @prezzo as decimal, @sconto as int AS BEGIN DECLARE @var DECIMAL(10,2) SELECT DISTINCT prezzo,sconto, prezzo_scontato=Cast(Prezzo*(1-sconto/100.0) as DECIMAL(10,2)) FROM tabella END
Best regards- Contrassegnato come risposta NikkySixx mercoledì 19 ottobre 2011 15:33
Tutte le risposte
-
Ciao NikkySixx,
Prova questa query PF:
SELECT prezzo,sconto,Prezzo*(1-sconto/100.0) FROM TABELLA
Best regards
- Modificato Badii Gharbi mercoledì 19 ottobre 2011 14:25
-
Perfetto! solo che ho un piccolo problema.In pratica il risultato è espresso con 8 cifre decimali.
Come faccio - con la sintassi di sql server all interno della mia stored procedure - a dichiarare una nuova variabile decimale a 2 cifre di precisione,e poi ad assegnargli la funzione da te suggeritami?
Grazie ancora
-
-
Ho provato a mettere assieme il tutto ma non funziona,continuo a vedere il risultato finale a piu di 2 cifre decimali dopo la virgola .....in piu vorrei cambiare nome alla colonna risultato e l as non funziona.
Dove sono gli errori?
ALTER PROCEDURE [dbo].[prova_stored_procedure] @prezzo as decimal, @sconto as int AS BEGIN DECLARE @var DECIMAL(10,2) SELECT DISTINCT prezzo,sconto, var=Prezzo*(1-sconto/100.0)
FROM tabella
- Modificato NikkySixx mercoledì 19 ottobre 2011 15:19
-
ALTER PROCEDURE [dbo].[prova_stored_procedure] @prezzo as decimal, @sconto as int AS BEGIN DECLARE @var DECIMAL(10,2) SELECT DISTINCT prezzo,sconto, prezzo_scontato=Cast(Prezzo*(1-sconto/100.0) as DECIMAL(10,2)) FROM tabella END
Best regards- Contrassegnato come risposta NikkySixx mercoledì 19 ottobre 2011 15:33
-
-