Re: Because you guys/gals/girls/women/insert pc term here are a smart lot
| From: | Baron Schwartz | Date: | Wed, 07 Jan 2009 14:55:57 +0000 |
| Subject: | Re: Because you guys/gals/girls/women/insert pc term here are a smart lot | ||
| References: | 1 2 3 4 5 6 7 8 9 10 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-285563@lists.php.net to get a copy of this message | ||
On Wed, Jan 7, 2009 at 9:17 AM, David Giragosian <dgiragosian@gmail.com> wrote:
> On 1/7/09, Jim Lyons <jlyons4435@gmail.com> wrote:
>>
>> There are other factors. If a table is completely fixed in size it makes
>> for a faster lookup time since the offset is easier to compute. This is
>> true, at least, for myisam tables. All books on tuning that I have read
>> have said the CHAR makes for more efficient lookup and comparison that
>> VARCHAR.
>>
>> Also, I was told by the instructor at a MySQL class that all VARCHAR
>> columns
>> are converted to CHAR when stored in memory. Can anyone else confirm this?
>
>
> That's my recollection, also, derived from a MySQL class. IIRC, the char
> length is equal to the longest varchar record in the column.
Actually it's a fixed-length buffer big enough to hold the worst-case
possible value, not the worst-case existing value. In bytes, no less.
If it's a utf8 varchar(100), that's 300 bytes, even if the biggest
value in the table is one character.
--
Baron Schwartz, Director of Consulting, Percona Inc.
Our Blog: http://www.mysqlperformanceblog.com/
Our Services: http://www.percona.com/services.html