Mysql
 sql >> Database >  >> RDS >> Mysql

mysql , bigint o decimal per la memorizzazione di valori> 32 bit ma inferiori a 64 bit

A mio avviso, bigint sarebbe meglio. È memorizzato come un numero intero che MySQL comprenderà in modo nativo senza alcuna conversione richiesta e quindi (immagino) sarà più veloce nella manipolazione. Dovresti quindi aspettarti che MySQL sia leggermente più efficiente se usi bigint.

Secondo questa pagina di manuale , le prime 9 cifre del tuo numero verranno memorizzate in un blocco di quattro byte e le restanti cifre (necessari fino a 12) verranno memorizzate in un blocco di due byte. Ciò significa che la tua colonna occupa 6 byte per riga, invece di 8 byte per bigint. Suggerirei che, a meno che a) non memorizzi un numero veramente osceno di righe, in modo tale che lo spazio occupato sia una seria preoccupazione, e b) non avrai bisogno di interrogare i dati in questione molto poco, dovresti vai con bigint.