>> Technologie Électronique >  >> Maison intelligente >> Vie connectée

Comment convertir des nombres à virgule (float) en entiers (int) en SQL

En SQL Server, les nombres à virgule (double précision) sont de type float. Pour les convertir en entier, on utilise CAST(). CAST() tronque (pas d'arrondi). Pour arrondir, combinez avec ROUND().

Étape 1 : Ouvrir SSMS

Lancez SQL Server Management Studio.

Étape 2 : Nouvelle requête

Ouvrez une fenêtre de requête.

Étape 3 : Conversion sans arrondi (troncation)

Exécutez :

SELECT CAST( AS INT)

Remplacez par votre nombre (ex: CAST(12.9 AS INT) → 12).

Étape 4 : Conversion avec arrondi

Exécutez :

SELECT CAST(ROUND(CAST( AS DECIMAL(10,3)), 0) AS INT)

Ex: 12.9 → 13. Le cast en DECIMAL(10,3) évite les erreurs de débordement sur ROUND().

Astuce

CONVERT() peut remplacer CAST().

Avertissements

  • Sans cast intermédiaire en DECIMAL, ROUND() peut causer une erreur de débordement arithmétique si le résultat a plus de chiffres que l'argument original.
  • Hors plage [-2 147 483 647 ; 2 147 483 647] → erreur de débordement (limites du type INT).
Vie connectée