Имеет ли значение INT width в таблице MySQL какую-либо разницу в соединениях? - PullRequest
2 голосов
/ 04 мая 2011

MySQL позволяет указать ширину для столбцов типа int, например: INT (9) INT (10) INT (11) который, согласно документации , является "метаданными ширины экрана", которые используются MySQL, только если вы включили "zerofill".

Мой вопрос: действительно ли эта ширина имеет какое-либо значение для скорости соединений? (не должно, но я не уверен на 100%)

Например, следующий псевдокод:

SELECT a.field FROM a, b WHERE a.int(10)=b.int(10) WHERE b.anotherfield=?

Быть быстрее / лучше чем:

SELECT a.field FROM a, b WHERE a.int(8)=b.int(11) WHERE b.anotherfield=?

Есть ли другие "проблемы" со смешанной шириной? (Внешние ключи и т. Д.). Я просто хочу знать, стоит ли нормализовать ширину всех наших целых или нет.

1 Ответ

2 голосов
/ 04 мая 2011

Не верьте мне на слово, но держу пари, что это никак не связано с производительностью. Это просто ширина дисплея. см http://dev.mysql.com/doc/refman/5.0/en/numeric-type-overview.html и http://alexander.kirk.at/2007/08/24/what-does-size-in-intsize-of-mysql-mean/

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