MySQL中有符号和无符号有什么区别?签名和签名是什么意思?
答案 0 :(得分:25)
无符号数字没有减号。无符号数只能是正数或零(例如123,0)。签名号码也可以是负数(例如-42)。
这answer解释了差异。
答案 1 :(得分:7)
您可以存储在给定空间中的范围。例如,引自the docs:
TINYINT[(M)] [UNSIGNED] [ZEROFILL]
一个非常小的整数。签名范围 是-128到127.无符号范围是 0到255。
,当然对于其他更大的整数类型也是如此。
答案 2 :(得分:3)
可能值的范围,如table所示。
它不是特定于MySQL,它是计算机中如何表示整数的结果。符号本身需要一位,因此最大数量(大致)减半。您也可以将其视为向下移动整个范围的一半。 (另外,因为有可用数量的偶数,并且没有两个零,所以你得到的数字比正数多一个)。如果您想了解更多信息,请阅读two's complement。