mysql中char和varchar返回相同的长
时间: 2023-09-07 21:05:11 浏览: 97
在MySQL中,char和varchar都是用来存储字符串类型的数据的,但它们具有一些不同的特点。
首先,char类型是固定长度的字符类型,它会在存储数据时占用固定长度的空间。例如,如果定义一个char(10)的字段,不论实际存储的字符数量是多少,它都会占用10个字符的空间,即使实际存储的字符不足10个也是如此。
与之相比,varchar类型是可变长度的字符类型,它会根据实际存储的字符数量占用不同长度的空间。如果定义一个varchar(10)的字段,如果实际存储的字符数量不足10个,则只会占用实际字符数量的空间,而不会浪费空间。
因此,当char和varchar的长度设置相同时,如果实际存储的字符数量相同,两者返回的长度长度也是一样的。例如,char(10)字段和varchar(10)字段都存储了5个字符的字符串,那么无论使用哪种类型,返回的长度都是5。
但需要注意的是,由于char类型是固定长度的,所以当存储的字符数量不足设置的长度时,后面会自动使用空格填充。而varchar类型则不会有此情况发生。
总而言之,当char和varchar的长度相同时,实际存储相同字符数量的字符串时,它们返回的长度是相同的。但它们内部的存储方式和尺寸是有区别的。
相关问题
mysql中char和varchar
MySQL中的char和varchar都是用来存储字符串的数据类型。
char是定长的字符串类型,存储空间需要在定义时指定,在存储空间内容不够时会自动在字符串后面填充空格。
varchar是可变长的字符串类型,存储空间需要在定义时指定,但是实际所用空间只有字符串长度所需要的空间,没有空间浪费。
一般来说,如果字符串长度是固定的,使用char会更高效,如果字符串长度是不确定的,使用varchar会更省空间。
mysql中char和varchar区别
char和varchar都是MySQL中的字符类型,但它们有一些区别:
1. 存储方式不同:char是固定长度的,varchar是可变长度的。
2. 存储空间不同:char存储时会占用固定的空间,而varchar只会占用实际存储的空间。
3. 查询效率不同:char类型的查询效率比varchar高,因为char类型的数据长度是固定的,所以查询时不需要计算长度。
4. 存储方式不同:char类型的数据存储时会在末尾自动填充空格,而varchar不会。
总的来说,如果存储的数据长度是固定的,建议使用char类型;如果存储的数据长度不确定,建议使用varchar类型。
阅读全文