MySQL Feldtyp für die Daten zu Größe und Gewicht
Was ist die angemessene MySQL Feldtyp für das Gewicht (in Kilogramm) und Höhe (Meter) - Daten?
- Verwenden Sie nur ganze zahlen oder Gleitkommazahlen? Was ist der größte mögliche Wert, den Sie brauchen, um zu speichern? Werden Sie jemals Speicherung negativer zahlen oder nur positive???
- Es sollten überlegen, schwebende Punkte, denke ich. EX: 80,550 (80 k, 550 gr.) Größte Werte sind für Babys (10k, 1m). Alle positiven, natürlich. LOL
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dass alle hängt. Es gibt Vorteile und Nachteile für die verschiedenen numerischen Typen:
Wenn du unbedingt die Größe/Gewicht um genau zu sein, eine bestimmte Anzahl von Dezimalstellen und nicht Gegenstand der Probleme, die floating-point-zahlen verursachen können, verwenden Sie decimal() (dezimal nimmt zwei Parameter, die Menge, die Anzahl der Ziffern > 1 und die Anzahl der Ziffern < 1, so decimal(5,2) wäre in der Lage, die zahlen speichern, so niedrig wie 0,01 999.99). Feste Präzisions-Mathe ist ein bisschen langsamer, und es ist mehr teuer, um Sie zu speichern, weil die algorithmen beteiligt, es zu tun. Es ist unbedingt zu speichern, Währung, Werte oder jeden Wert, den Sie beabsichtigen, die Mathematik zu tun, mit denen Währung als numeric(). Wenn Sie, zum Beispiel, zahlen die Leute pro Pfund oder pro meter für ein baby, es müsste numeric().
Wenn Sie bereit sind, die Möglichkeit zu akzeptieren, dass einige numerische Werte werden weniger präzise als die anderen verwenden entweder FLOAT oder DOUBLE, je nach der Menge der Präzision und der Größe der zahlen, die Sie speichern. Schwimmende Punkte sind Näherungswerte auf der Basis der Art und Weise Computern zu tun math, wir verwenden die dezimal-Punkte bedeuten aus Potenzen von 10, Computer, Mathematik in base2, die beiden sind nicht direkt vergleichbar, so zu umgehen, dass die algorithmen wurden speziell für die Fälle, in denen 100% Präzision ist nicht erforderlich, aber mehr Geschwindigkeit ist notwendig, dass nicht erreicht werden kann, von der Modellierung über Kollektionen von ganzen zahlen.
Weitere Infos:
http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html
http://dev.mysql.com/doc/refman/5.0/en/fixed-point-types.html
http://dev.mysql.com/doc/refman/5.0/en/floating-point-types.html