sql >> Databáze >  >> RDS >> Mysql

Datové typy kryptoměn MySQL?

Existuje jasná nejlepší možnost ze tří, které jste navrhli (plus jedna z komentářů).

VELKÝ — používá pouhých 8 bajtů, ale největší BIGINT má pouze 19 desetinných číslic; pokud vydělíte 10, největší hodnota, kterou můžete vyjádřit, je 9,22, což není dostatečný rozsah.

DVOJNÁSOBKA — má pouze přesnost 15–17 desetinných míst; má všechny známé nevýhody aritmetiky s plovoucí desetinnou čárkou.

VARCHAR — použije 20+ bajtů, pokud pracujete s 18 desetinnými místy; bude vyžadovat konstantní konverze string↔int; nelze třídit; nelze srovnávat; nelze přidat do DB; mnoho nevýhod.

DECIMAL(27;18) – pokud používáte MySQL, bude to trvat 12 bajtů (4 pro každou skupinu 9 číslic ). To je docela rozumná velikost úložiště a má dostatečný rozsah pro podporu množství velkých jako jedna miliarda nebo malých jako jeden Wei. Lze jej třídit, porovnávat, přidávat, odečítat atd. v databázi bez ztráty přesnosti.

Použil bych DECIMAL(27,18) (nebo DECIMAL(36,18) pokud potřebujete uchovávat skutečně obrovské hodnoty) k ukládání peněžních hodnot kryptoměny.




  1. Nahrání velkého souboru CSV do databáze Mysql

  2. Mám více dotazů, které chci sloučit všechny výsledky dotazu do stejné tabulky

  3. Datový model rozvozu restaurace

  4. Dotaz MySQL pro zjištění váhy hran v grafu