目前使用MySQL版本5.1.6
这是我的第一个真实世界版本,到目前为止我实际上已经享受它;但是,我现在仍然坚持关于字段数据类型的决定,并希望有人可以为我排序。
我基本上有10个字段,它们都是不同的测试结果。数字范围从-100到100,并且在实际点之后可以有一个小数点。
例如,-5.1,0,1,16.3,99.2和100都是可能的数据。根据我的阅读,我们应该使用DECIMAL来表示我们通常测量的并且是精确的(这些是),而FLOAT和DOUBLE是近似值,我并不是真的想要(虽然我确信在这个层次上,近似值)如果存在则非常小。)
如果我使用DECIMAL,如果使用的话,是否必须在开头包含“ - ”空格? I.E,我会使用DECIMAL(4,1)还是DECIMAL(5,1)还是我离开这里?我可能会过分思考这一点。
答案 0 :(得分:6)
DECIMAL(4,1)
就足够了,需要包含符号数
更多信息:http://dev.mysql.com/doc/refman/5.1/en/precision-math-decimal-changes.html
例如,
的范围DECIMAL(3,0)
列支持-999到999
十进制将确实是满足您需求的最佳选择。 Float和Double可以给你丑陋的数字(例如0.2不能表示为浮点数,你得到0.19999999)
答案 1 :(得分:4)
否定符号在计算中不算作数字,因此DECIMAL(4,1)应该没问题。
编辑:这似乎也是适合您用途的正确字段。试试吧!