Geeignet mysql-Datentyp zum speichern breiten-und Längengrad in separate Felder
Habe ich gespeichert, breiten-und Längengrad in separaten Feldern. Ich bin immer Lat & Lng-Koordinaten von google, und auch Sie finden von Orten in der Nähe mit einigen Formel. Jetzt mal latitude und longitude-Wert erreichen bis zu 15 Dezimalstellen wie dieser --> 15.123456789000001. was wäre der beste Datentyp zum speichern dieser Werte? Jetzt bin ich mit dem Double zu speichern breiten-und Längengrad-Koordinaten.
Vielen Dank im Voraus
möglich, Duplikat der Was ist der ideale Datentyp zu verwenden, wenn die Speicherung der breiten - / Längengrade in einer MySQL-Datenbank?
InformationsquelleAutor jacobian | 2011-08-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
99% der Zeit, alle floating-point-Daten-Typ Ihrer Wahl sollte ausreichend sein.
Ja, ich weiß, Sie können nicht immer genau und exakt darstellen, Werte aus bis zu 15 Nachkommastellen, aber , egal. Lat/long zu 15 Dezimalstellen ist die Angabe einer position mit einem (behaupteten) Genauigkeit in der Größenordnung der Breite von ein paar Wasserstoffatome. Sie brauchen nur sechs Dezimalstellen zu bekommen, Genauigkeit innerhalb eines meters, die ausreichend ist für die meisten Fälle. Sehr wenig, sollte mehr als Zentimeter-Pegel Genauigkeit (8 Plätze) und 10 oder sogar 100-meter-Genauigkeit gut genug für viele Anwendungen.
Und, natürlich, das ist alles unter der Annahme, dass die ursprüngliche Datenquelle ist, dass Sie präzise in den ersten Platz. Mein Handy ist GPS nur selten Ansprüche Genauigkeit besser als 10m (und sogar dann die Hälfte der Zeit, Ihre Karte nicht zeigen, meine tatsächliche Position innerhalb des 10m Kreises, wo er behauptet, ich sein sollte), so dass die Speicherung einer position für mehr Präzision wäre sinnlos und irreführend. Zugegeben, Sie verwenden möglicherweise eine genauere Daten-Quelle, als die Billig-GPS-Empfänger, integriert in ein Handy, aber, auch so, es ist unwahrscheinlich, dass tatsächlich genau den ganzen Weg hinunter zu molekularen Maßstab.
Die große Sache über das Metrische system und signifikante Ziffern ist, dass Sie sich beide Faktoren der 10. Wenn 8 Dezimalstellen = 1cm Genauigkeit 7 stellen = 10cm, 6 = 100cm, etc. Beachten Sie auch, dass die Oberfläche der dargestellten Entfernung von einem Grad variiert mit dem Breitengrad. Um eine genaue Zuordnung, csgnetwork.com/degreelenllavcalc.html, um zu bestimmen, die Größe von Grad in Meter an Ihr Ziel Breitengrad, dann verschieben Sie die Dezimalstelle, wie gebraucht.
InformationsquelleAutor Dave Sherohman
Ich verwendet habe, DECIMAL-Datentyp.
Sie können die Speicherung negativer zahlen in dezimal-Typen. Jedoch wird Ihre positive zahlen werden nicht die + - Zeichen angehängt. dev.mysql.com/doc/refman/5.5/en/fixed-point-types.html
InformationsquelleAutor cleanunicorn
Können Sie versuchen, eine Räumliche Erweiterungen mit GIS.
Blick auf http://dev.mysql.com/doc/refman/5.1/en/spatial-extensions.html
InformationsquelleAutor Andrej Ludinovskov