[英]MySQL Using Stored Procedure: How to restrict decimal/allow whole numbers only?
[英]using Whole and Decimal numbers in a single column in mysql
我是音乐评论者,我想建立自己的网站。 我已经在mysql中建立了一个数据库,其中有一个用于评估的列。 这里是可能性:10、9.5、9、8.5、8、7.5 ...,0.5和0
我可以使用哪种列,现在我选择DECIMAL,其值为:3,1
问题是,当我输入9时,它返回9.0 ...是否可以在列中存储整数和小数?
将它们存储为小数,但作为100的一部分。9.9将是99。然后使用php除以10并将其转换为双精度。 您可以通过除以小数和0来转换成两倍的除法。
结果/ 10.0
您正在将值与表示形式混淆。 如果您不对值进行算术运算(只是比较它们),则可以考虑将它们存储为字符串。
或者,在选择它们以进行打印时,可以根据需要设置值的格式:
select (case when rating % 1 = 0 then format(rating, 0)
else format(rating, 1)
end)
为了格式化显示的数字,您可以使用解析mysql结果所用的任何语言进行这种处理。例如,在PHP中,您只需将其转换为浮点数并将其打印出来。
$string = '9.0000000';
echo (float)$string;
这将打印“ 9”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.