float против smallint против десятичных в mysql

Теперь у меня есть таблица с показами, кликами и ctr.

Мне было интересно, если я должен использовать tinyint(1) и хранить CTR, который имеет диапазон от 1-250

или я должен хранить его как поплавок, который имеет большую точность. или, возможно, десятичный.

Для статистики я бы вычислял ctr, используя клики / показы, поэтому получить точное значение не проблема.

Но для производительности, что было бы лучшим способом сохранить его.

2 ответа

Решение

Если вы используете php для вычисления CTR на основе ваших данных mysql, то нет необходимости использовать float или десятичную - просто используйте tinyint.

Но если вы хотите сохранить CTR в базе данных, тогда используйте float - это как маленькая десятичная версия.

Если вы не беспокоитесь о десятичных дробях, то tinyint будет определенно более эффективным, чем float.

Другие вопросы по тегам