There is the best best option out of three that you proposed (plus one of the comments).
BIGINT - uses only 8 bytes, but the largest BIGINT
has only 19 decimal digits; if you divide by 10 18 the largest value you can imagine is 9.22, which is not enough for the range.
DOUBLE - has only 15-17 decimal digits of accuracy; has all the known disadvantages of floating point arithmetic.
VARCHAR - 20 + , 18 ; string; ; ; ; .
DECIMAL (27,18) - MySQL 12 (4 9 ). , , Wei. , , , .. .
DECIMAL(27,18)
( DECIMAL(36,18)
, - ), .