Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Hat jemand eine effiziente Möglichkeit gefunden, BSON ObjectId-Werte in einer SQL-Datenbank zu speichern?

Der Bereich eines 12-Byte-Ganzzahl ohne Vorzeichen wäre 0..79228162514264337593543950335 (maximal 29 Ziffern); laut Dokumenten (gleiche URL, die Sie zitiert haben), ein DECIMAL /NUMERIC column packt jede Gruppe von neun Ziffern zur Basis 10 in vier Bytes (addiert zu floor(29 / 9) * 4 = 3 * 4 = 12 Bytes für die ersten 27 Ziffern), wobei die verbleibenden 2 Ziffern ein zusätzliches Byte benötigen, was bis zu 13 Bytes Speicherplatz für ein DECIMAL(29) ergibt Spalte.

Oder Sie können sie als BINARY(12) speichern .