What is the difference between tinyint, smallint, mediumint, bigint and int in MySQL?

They take up different amounts of space and they have different ranges of acceptable values. Here are the sizes and ranges of values for SQL Server, other RDBMSes have similar documentation: MySQL Postgres Oracle (they just have a NUMBER datatype really) DB2 Turns out they all use the same specification (with a few minor exceptions … Read more

Signed versus Unsigned Integers

Unsigned can hold a larger positive value and no negative value. Yes. Unsigned uses the leading bit as a part of the value, while the signed version uses the left-most-bit to identify if the number is positive or negative. There are different ways of representing signed integers. The easiest to visualise is to use the … Read more

Way to get number of digits in an int?

Your String-based solution is perfectly OK, there is nothing “un-neat” about it. You have to realize that mathematically, numbers don’t have a length, nor do they have digits. Length and digits are both properties of a physical representation of a number in a specific base, i.e. a String. A logarithm-based solution does (some of) the … Read more