SQL a trois fonctions qui peuvent arrondir les valeurs à un nombre spécifique de décimales. Vous pouvez utiliser ces fonctions pour résoudre une variété de problèmes liés à la base de données , allant de se débarrasser de quelques fractions de cents sur les transactions financières pour régulariser les entrées de données provenant de multiples instruments scientifiques . Si vous êtes nouveau dans SQL , ses fonctions d'arrondi peuvent sembler un peu étrange , et peut causer quelques problèmes d'adaptation. «Le round () " conventionnel arrondissement
de SQL fonction prend une valeur et arrondit existant au nombre de décimales spécifié . Le format est le suivant :
RONDE ( [valeur] , [n ], [1 ] ) )
Ici, «[ valeur] " est une valeur décimale , et " [n ] "est le nombre de chiffres , la valeur doit être arrondie à . Arrondir les valeurs des tours classiques de 0,5 ou plus haut, et les valeurs de 0,49 et plus bas . Réglage de la valeur de tours "0" à valeurs entières ; réglage de la valeur de tours "-1" au plus proche multiple de 10. Le " round () " troisième paramètre de la fonction , " [1], " tronque le nombre au nombre de décimales spécifié s'il est réglé sur une valeur différente de zéro . Une source importante de problèmes inattendus d'arrondi viendra où , en raison d'une erreur typographique , le troisième paramètre est réglé et le nombre tronque plutôt que rounds.
Plancher et le plafond
SQL utilise la fonction " FLOOR () " pour forcer valeurs à arrondir vers le bas à la valeur la plus proche , et le "plafond ()" fonction d'arrondir à la valeur la plus proche . Ces deux fonctions retournent des valeurs entières , même en utilisant un type de données float avec un nombre de décimales spécifié retourne une valeur avec des zéros après la virgule
Recommandé Types de données
< . br>
le plus probable raison d'erreurs d'arrondi dans SQL découle de l'utilisation d'un type de données inattendu pour l'expression numérique dans le " round () " fonction , ou de l'utilisation de " FLOOR () " ou " PLAFOND ( ) " et s'attendent à obtenir un type de données décimal, plutôt que d'un nombre entier . Si votre fonction SQL est de vous donner des résultats inattendus d'arrondissement , assurez-vous que la fonction " CAST ( ) " qui est en spécifiant le nombre a le type de données est réglé sur " entier ", " virgule ", " argent " ou " smallmoney . " le type de données « décimal » est limitée à 38 chiffres au total , qui est une limitation que peu de gens en dehors de la communauté scientifique rencontrer.
Le autres types de données < br > Photos
deux types de données renvoient des valeurs numériques qui peuvent causer des problèmes avec la fonction " round () " . Ce sont des «réel» et «flotter» les types de numéros dans SQL , utilisés pour enregistrer de très petites fractions qui se raflés par la plupart des variétés de SQL à la dernière décimale dans le type de données indiqué , certaines implémentations de SQL rondes à zéro , arrondir vers le bas ou autour conventionnelle. Lorsque vous avez des données étant introduites dans une base de données SQL qui pourraient utiliser le «réel» ou des types de données " float " , utiliser le " CAST ( )" ou " convert () " fonctions pour les convertir en l' " virgule " type de données.