Dividere in SQL Server

In SQL Server 2005 Express, il risultato è sotto

SELEZIONARE 100 /15 –Risultato 6

Ma voglio ottenere un valore approssimativo 7 (come l’utilizzo di calcolatrice)

100 /15 = 6.6666..

Come farlo in SQL Server?

Provare a selezionare 100.00/6
Ora ho capito. Grazie a tutti :). SELECT ROUND(100 / 15.00,0)

OriginaleL’autore soclose | 2011-03-01

4 risposte

  1. 10

    È necessario utilizzare i numeri decimali, ad esempio, 100 /15.0. Se si utilizza interi, il risultato viene interpretato come un numero intero e troncato per il più grande numero intero minore o uguale al risultato.

    OriginaleL’autore

  2. 5

    SELECT cast(100 come float) /(15 float)

    OriginaleL’autore

  3. 3

    Si desidera SQL Server per eseguire virgola mobile divisione, contro la divisione di interi. Se si sta utilizzando i valori letterali, come nel tuo esempio, il suffisso denominatore con .0 per forza di SQL Server di trattarlo come un valore in virgola mobile.

    SELECT 100 / 15.0

    In caso contrario, assicurarsi che si dichiarano le variabili come FLOAT.

    OriginaleL’autore

  4. 2

    Provare a dichiarare le variabili come galleggianti:

    DECLARE @var1 FLOAT
    DECLARE @var2 FLOAT
    SET @var1 = 100
    SET @var2 = 15
    SELECT @var1 / @var2

    OriginaleL’autore

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *