Maison >base de données >tutoriel mysql >Comment implémenter la division dans MySQL avec deux décimales
Méthode de division MySQL avec deux décimales : 1. Utilisez la fonction "DECIMAL(P,D)", syntaxe "convert(value 1/value 2, decimal(15,2))" ; fonction, syntaxe "TRUNCATE(value1/value2,2)".
L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.
Au travail, nous rencontrerons des calculs décimaux et devrons afficher le 0 à la fin de la virgule. Nous utiliserons la fonction DECIMAL, qui est une fonction très puissante : usage spécifique DECIMAL(P,D)code>; <code>DECIMAL(P,D)
;
在上面的语法中:
P是表示有效数字数的精度。 P范围为1〜65。
D是表示小数点后的位数。 D的范围是0~30。MySQL要求D小于或等于(
DECIMAL(P,D)
表示列可以存储D位小数的P位数。十进制列的实际范围取决于精度和刻度。
与INT数据类型一样,DECIMAL类型也具有UNSIGNED和ZEROFILL属性。 如果使用UNSIGNED属性,则DECIMAL UNSIGNED的列将不接受负值。
如果使用ZEROFILL,MySQL将把显示值填充到0以显示由列定义指定的宽度。 另外,如果我们对DECIMAL列使用ZERO FILL,MySQL将自动将UNSIGNED属性添加到列。
测试案例:
数据库的表结构
第一种计算方式:
select convert(t/100,decimal(15,2)) as money from test
select convert(t/100,decimal(10,2)) as money from test
第二种计算方式
返回数字X,截断到D小数位。 如果D为0,结果没有小数点或小数部分。 D是负数,导致值X的小数点左边的D数字变为零。(简单说就是没有四舍五入)
SELECT TRUNCATE(t/100,2) as g from test
TRUNCATE(x,d)
DECIMAL(P, D)
signifie que la colonne peut stocker P chiffres de D décimales. La plage réelle d'une colonne décimale dépend de la précision et de l'échelle. 🎜🎜Comme le type de données INT, le type DECIMAL possède également les attributs UNSIGNED et ZEROFILL. Si l'attribut UNSIGNED est utilisé, les valeurs négatives ne seront pas acceptées pour les colonnes DECIMAL UNSIGNED. 🎜🎜Si ZEROFILL est utilisé, MySQL remplira la valeur d'affichage à 0 pour afficher la largeur spécifiée par la définition de colonne. De plus, si nous utilisons ZERO FILL sur une colonne DECIMAL, MySQL ajoutera automatiquement l'attribut UNSIGNED à la colonne. 🎜🎜Cas de test : 🎜🎜Structure table de la base de données🎜🎜
🎜🎜La première méthode de calcul :🎜rrreee
🎜rrreee
🎜🎜 N°1 Deux méthodes de calcul🎜🎜Renvoyer le nombre X, tronqué à D décimales. Si D vaut 0, le résultat n’a ni point décimal ni partie décimale. D est un nombre négatif, ce qui fait que le chiffre D à gauche de la virgule décimale de la valeur X devient zéro. (En termes simples, il n'y a pas d'arrondi)🎜rrreee
🎜🎜TRUNCATE(x,d)
: La fonction renvoie le nombre x arrondi à d décimales. Si la valeur de d est 0, le résultat n’aura ni point décimal ni partie décimale. Si d est défini sur un nombre négatif, toutes les valeurs d'ordre inférieur commençant à partir du dème chiffre à gauche de la virgule décimale de x sont tronquées (renvoyées à zéro). 🎜🎜【Recommandation associée : 🎜tutoriel vidéo mysql🎜】🎜
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!