BIGINT provides 8 bytes of storage for integer values.
When mixed with other data types in expressions, the resulting data type follows the rules shown in Numeric type promotion in expressions.
An attempt to put an integer value of a larger storage size into a location of a smaller size fails if the value cannot be stored in the smaller-size location. Integer types can always successfully be placed in approximate numeric values, although with the possible loss of some precision. BIGINTs can be stored in DECIMALs if the DECIMAL precision is large enough for the value.