# Numeric Data Types

- [Numeric Data Type Overview](/docs/server/reference/data-types/numeric-data-types/numeric-data-type-overview.md): General introduction to numeric data types. This page summarizes the available integer, fixed-point, and floating-point types and their storage characteristics.
- [BIGINT](/docs/server/reference/data-types/numeric-data-types/bigint.md): Large integer type. A BIGINT uses 8 bytes and can store values from -9223372036854775808 to 9223372036854775807 (signed) or 0 to 18446744073709551615 (unsigned).
- [BIT](/docs/server/reference/data-types/numeric-data-types/bit.md): Bit-field data type. A BIT(M) column stores M bits per value, allowing storage of binary values from 1 to 64 bits in length.
- [BOOL](/docs/server/reference/data-types/numeric-data-types/bool.md): Synonym for TINYINT(1). This type is commonly used to represent boolean values, where 0 is considered false and non-zero values are true.
- [BOOLEAN](/docs/server/reference/data-types/numeric-data-types/boolean.md): Complete BOOLEAN type reference: TINYINT(1) synonym, TRUE/FALSE aliases, CREATE TABLE/SHOW CREATE TABLE output, and IF()/IS operator evaluation.
- [DEC, NUMERIC, FIXED](/docs/server/reference/data-types/numeric-data-types/dec-numeric-fixed.md): Synonyms for DECIMAL. These keywords declare fixed-point numbers, which store exact numeric data with a defined precision and scale.
- [DEC](/docs/server/reference/data-types/numeric-data-types/numeric-data-types-dec.md): Synonym for DECIMAL. This keyword creates a fixed-point column with exact precision, suitable for financial calculations.
- [DECIMAL](/docs/server/reference/data-types/numeric-data-types/decimal.md): Complete DECIMAL type reference: DECIMAL(M,D) syntax, precision limits (M≤65, D≤38), SIGNED/UNSIGNED/ZEROFILL options, and rounding behavior.
- [DOUBLE PRECISION](/docs/server/reference/data-types/numeric-data-types/double-precision.md): Synonym for DOUBLE. This keyword declares a normal-size (8-byte) floating-point number with double precision.
- [DOUBLE](/docs/server/reference/data-types/numeric-data-types/double.md): Double precision floating-point number. A DOUBLE column uses 8 bytes to store large or precise approximate values.
- [FIXED](/docs/server/reference/data-types/numeric-data-types/fixed.md): Synonym for DECIMAL. This keyword is used to define columns that require exact numeric precision, such as currency.
- [FLOAT](/docs/server/reference/data-types/numeric-data-types/float.md): Single precision floating-point number. A FLOAT column uses 4 bytes and stores approximate values with less precision than DOUBLE.
- [FLOAT4](/docs/server/reference/data-types/numeric-data-types/float4.md): Synonym for FLOAT. This keyword declares a single-precision floating-point column.
- [FLOAT8](/docs/server/reference/data-types/numeric-data-types/float8.md): Synonym for DOUBLE. This keyword declares a double-precision floating-point column.
- [Floating-point Accuracy](/docs/server/reference/data-types/numeric-data-types/floating-point-accuracy.md): Explanation of floating-point precision issues. This page details why FLOAT and DOUBLE types are approximate and how rounding errors occur.
- [INT](/docs/server/reference/data-types/numeric-data-types/int.md): Complete INT type reference: INT(M) syntax, signed (-2147483648 to 2147483647) vs unsigned (0 to 4294967295) ranges, and ZEROFILL padding guidelines.
- [INT1](/docs/server/reference/data-types/numeric-data-types/int1.md): Synonym for TINYINT. This type uses 1 byte of storage.
- [INT2](/docs/server/reference/data-types/numeric-data-types/int2.md): Synonym for SMALLINT. This type uses 2 bytes of storage.
- [INT3](/docs/server/reference/data-types/numeric-data-types/int3.md): Synonym for MEDIUMINT. This type uses 3 bytes of storage.
- [INT4](/docs/server/reference/data-types/numeric-data-types/int4.md): Synonym for INT. This type uses 4 bytes of storage.
- [INT8](/docs/server/reference/data-types/numeric-data-types/int8.md): Synonym for BIGINT. This type uses 8 bytes of storage.
- [INTEGER](/docs/server/reference/data-types/numeric-data-types/integer.md): Synonym for INT. This keyword declares a standard 4-byte integer column.
- [MEDIUMINT](/docs/server/reference/data-types/numeric-data-types/mediumint.md): Medium-sized integer. A MEDIUMINT column uses 3 bytes and stores values from -8388608 to 8388607 (signed) or 0 to 16777215 (unsigned).
- [MIDDLEINT](/docs/server/reference/data-types/numeric-data-types/middleint.md): Synonym for MEDIUMINT. This keyword refers to the 3-byte integer type.
- [NUMBER](/docs/server/reference/data-types/numeric-data-types/number.md): Oracle-compatible synonym for DECIMAL. This type is used for fixed-point arithmetic.
- [NUMERIC](/docs/server/reference/data-types/numeric-data-types/numeric.md): Synonym for DECIMAL. This type stores exact numeric data values.
- [REAL](/docs/server/reference/data-types/numeric-data-types/real.md): Synonym for DOUBLE. In standard SQL mode, REAL is a double-precision floating-point number.
- [SMALLINT](/docs/server/reference/data-types/numeric-data-types/smallint.md): Small integer type. A SMALLINT column uses 2 bytes and stores values from -32768 to 32767 (signed) or 0 to 65535 (unsigned).
- [TINYINT](/docs/server/reference/data-types/numeric-data-types/tinyint.md): Very small integer type. A TINYINT column uses 1 byte and stores values from -128 to 127 (signed) or 0 to 255 (unsigned).
