2011-12-07 7 views
17

Ho bisogno di convertire un valore numerico in nvarchar nel comando sql.come convertire i valori numerici in nvarchar nel comando sql

Qualcuno può aiutarmi per favore.

+1

Se non si dispone di una copia della documentazione in linea di SQL Server sul computer, è sempre possibile [accedervi tramite Internet] (http://msdn.microsoft.com/en-us/library/ms130214%28v = sql.90% 29.aspx "Documentazione in linea di SQL Server 2005"). Il suo sistema di navigazione è abbastanza decente e dovrebbe permetterti di trovare le risposte alle domande di base abbastanza velocemente. Ecco un articolo sulle funzioni di conversione T-SQL: [CAST e CONVERT (Transact-SQL)] (http://msdn.microsoft.com/en-us/library/ms187928%28v=SQL.90%29.aspx). –

risposta

9
declare @MyNumber int 
set @MyNumber = 123 
select 'My number is ' + CAST(@MyNumber as nvarchar(20)) 
+0

grazie per la risposta .. supponiamo che MyNumber = 123.45 ... quale sarà il mio risultato. La conversione da – Arun

+0

a nvarchar è la stessa, ma usa un tipo di dati numerico diverso come 'decimal (5,2)' –

23
select convert(nvarchar(255), 4343) 

dovrebbe fare il trucco.

3
declare @MyNumber float 
set @MyNumber = 123.45 
select 'My number is ' + CAST(@MyNumber as nvarchar(max)) 
0

Se la cultura del risultato non fa questioni o stiamo solo parlando di valori interi, CONVERT o CAST andrà bene.

Tuttavia, se il risultato deve corrispondere a una specifica cultura, FORMAT potrebbe essere la funzione di andare:

DECLARE @value DECIMAL(19,4) = 1505.5698 
SELECT CONVERT(NVARCHAR, @value)  --> 1505.5698 
SELECT FORMAT(@value, 'N2', 'en-us') --> 1,505.57 
SELECT FORMAT(@value, 'N2', 'de-de') --> 1.505,57 

Per ulteriori informazioni su FORMAT vedere here.

Naturalmente, la formattazione del risultato dovrebbe essere una questione di livello dell'interfaccia utente del software.

Problemi correlati