快捷搜索:  汽车  科技

mysqlchar与varchar的区别(MySQL字段类型varchar和char的性能分析)

mysqlchar与varchar的区别(MySQL字段类型varchar和char的性能分析)

我们用30万条数据做测试,数据都一样。只是存储的字段类型不一样,废话少说,看数据。

有两个表 一个表是varchar_test ,用varchar(32) 存储MD5加密的密码字段,另一个表是char_test,用char(32)存储的MD5加密的密码字段。

mysqlchar与varchar的区别(MySQL字段类型varchar和char的性能分析)(1)

mysqlchar与varchar的区别(MySQL字段类型varchar和char的性能分析)(2)

首先看数据一样的两张表导出后的大小是多少。用char(32)存储的比varchar(32)小,原因是,varchar是可变长度,需要额外的1或2个字节存储字符串的长度。

mysqlchar与varchar的区别(MySQL字段类型varchar和char的性能分析)(3)

其次看查询速度,从查询速度看,varchar(32)比char(32)的查询速度要快。已经排除缓存。多次测试之后,只展示部分数据。

mysqlchar与varchar的区别(MySQL字段类型varchar和char的性能分析)(4)

总结:varchar存储定长的字段比char消耗空间,但是,查询性能比char存储的要快。这就是以空间换速度。

周末有点事,明天继续讨论关于这两个字段的性能比较。有其他问题可以下面留言评论。


添加微信号 ‘xha911’共同探讨。

猜您喜欢: