Description of unsigned data type usage in MySQL

Source: Internet
Author: User
Tags numeric

unsigned is not a negative number, use this type can increase the length of the data!

For example , if the tinyint max is 127, that tinyint unsigned max You can go to 127 * 2

The unsigned property is only for integers, and the binary property is used only for char and varchar.

Type Description
tinyint A very small integer
smallint smaller integers
Mediumint Medium size integers
Int Standard integer
bigint Larger integer
Float Single-precision floating-point numbers
Double Double-precision floating point numbers
Decimal Floating-point numbers for a string

The name and the range of values for each numeric type are shown in table 2.

Type description Take value range
Tinyint[(m)] Signed values:-128 to 127 (-27 to 27–1) unsigned values: 0 to 255 (0 to 28–1) 1 bytes
Smallint[(m)] Signed values:-32768 to 32767 (-215 to 215–1) unsigned values: 0 to 65535 (0 to 21 6–1) 2 bytes
Mediumint[(m)] Signed values:-8388608 to 8388607 (-22 3 to 22 3–1) unsigned values: 0 to 16777215 (0 to 22 4–1) 5>3 bytes
Int[(m)] Signed values:-2147683648 to 2147683647 (-231 to 231-1) unsigned value: 0 to 4294967295 (0 to 232–1) 4 bytes
Bigint[(m)] Signed values:-9223372036854775808 to 9223373036854775807 (-263 to 263-1) unsigned value: 0 to 18446744073709551615 (0 to 264–1) 8 bytes
Float[(M, D)] Min Non 0 value: ±1.175494351e–38
double[(M,D)] Min Non 0 value: ±2.2250738585072014e–308
Decimal (M, D) variable; The range of values depends on M and D

Table 2: Range of values for numeric column types

The amount of storage required for the various types of values is shown in table 3.

Type description Storage requirements
Tinyint[(m)] 1 bytes
Smallint[(m)] 2 bytes
Mediumint[(m)] 3 bytes
Int[(m)] 4 bytes
Bigint[(m)] 8 bytes
Float[(M, D)] 4 bytes
Double[(M, D)] 8 bytes
Decimal (M, D) M-byte (MySQL < 3.23), m+2 bytes (mysql > 3.23)

Table 3: Storage requirements for numeric column types

MySQL offers five integral types: tinyint, smallint, mediumint, int, and bigint. int is an integer abbreviation. These types are different in the range of values that can be represented. Integer series can be defined as unsigned to disable negative values, which makes the column take a range of 0 or more. Various types of storage requirements are also different. A large amount of storage is required for a type that has a larger range of values.

MySQL provides three floating-point types: float, double, and decimal. Unlike an integral type, a floating-point type cannot be unsigned, and its value range is different from an integral type, not only because these types have a maximum value, but also with a minimum value of 0. The minimum value provides a measure of the corresponding type precision, which is important for recording scientific data (and, of course, negative maximum and minimum values).

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.