Производительность SELECT с плавающей точкой в ​​качестве ключа - PullRequest
0 голосов
/ 24 сентября 2018

У меня есть два столбца типа данных с плавающей запятой (lat, lng), которые являются моими ключами.

 lat       long      address
-21,5110  -48,6670   Itápolis, Rodovia Laurentino Mascari - São Paulo

Итак, по соображениям производительности, я должен сохранить данные как целое число?

 lat     long    address
-215110  -486670   Itápolis, Rodovia Laurentino Mascari - São Paulo

1 Ответ

0 голосов
/ 24 сентября 2018

Если ваша таблица очень большая и вам нужно рассмотреть все возможности для экономии памяти, вы можете сделать это так.Тем не мение;Вы должны принять во внимание, что целочисленный тип данных может не соответствовать всем возможным значениям с плавающей запятой, которые будут возникать как ошибка в действующей системе.Я хочу отметить, что вы также должны учитывать, что значения первичных ключей не должны изменяться в будущем по практическим соображениям.Это может вызвать проблемы с производительностью, особенно для работающей базы данных.Принимая во внимание предоставленные вами данные, по некоторым причинам лат и лонг могут быть изменены.Я бы предпочел использовать целое число (если возможно), которое также упрощает запросы выбора, такие как;SELECT * FROM Table WHERE Id=... и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...