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

Hvad skal du gøre, når du har brug for heltal større end 20 cifre på mysql?

Store heltal er faktisk ikke begrænset til 20 cifre, de er begrænset til de tal, der kan udtrykkes i 64 bit (f.eks. tallet 99,999,999,999,999,999,999 er ikke et gyldigt stort heltal, selvom det er 20 cifre langt).

Grunden til, at du har denne begrænsning, er, at heltal i native format kan manipuleres relativt hurtigt af den underliggende hardware, mens tekstversioner af et tal (plejer at) skal behandles et ciffer ad gangen.

Hvis du vil have et tal større end det største 64-bit heltal uden fortegn 18,446,744,073,709,551,615 så bliver du nødt til at gemme det som en varchar (eller andet tekstfelt) og håber, at du ikke behøver at lave meget matematisk manipulation på det.

Alternativt kan du se på tal med flydende komma, som har et større område, men mindre præcision, eller decimaltal, som burde kunne give dig 65 cifre for en integralværdi med decimal(65,0) som kolonnetype.



  1. dbms_lob.getlength() vs. length() for at finde klatstørrelse i oracle

  2. Hvordan installerer jeg kun klientværktøjerne til PostgreSQL på Windows?

  3. Saml kolonner med yderligere (særskilte) filtre

  4. Dynamisk pivot MySQL