3 comments

[ 2.8 ms ] story [ 19.2 ms ] thread
Shouldn't that be "0 - 1"?

"1 - 1" will correctly be computed as "0".

You're right, typo in the title!
Good reminder. Not specific to MySQL, though. This happens in many languages that have unsigned integers. The underlying bit pattern resulting from twos-complement arithmetic is the same for signed and unsigned arithmetic, but when interpreted as unsigned you get one more high bit instead of that bit representing the sign: 0 for positive, 1 for negative.