23、varchar与char的区别

varchar与char的区别

char的特点

  1. char表示定长字符串,长度是固定的;
  2. 如果插入数据的长度小于char的固定长度时,则用空格填充;
  3. 因为长度固定,所以存取速度要比varchar快很多,甚至能快50%,
  4. 但正因为其长度固定,所以会占据多余的空间,是空间换时间的做法;
  5. 对于char来说,最多能存放的字符个数为255,和编码无关

varchar的特点

  1. varchar表示可变长字符串,长度是可变的;
  2. 插入的数据是多长,就按照多长来存储;
  3. varchar在存取方面与char相反,它存取慢,因为长度不固定,但正因如此,不占据多余的空间,是时间换空间的做法;
  4. 对于varchar来说,最多能存放的字符个数为65532

总之,结合性能角度(char更快)和节省磁盘空间角度(varchar更小),具体情况还需具体来设计数据库才是妥当的做法

相关推荐
野生数据人2 分钟前
ES DSL 转 SQL 速查表:20 条子句对照 + 一条能直接跑的改写示例
大数据·数据库
野生数据人3 分钟前
采集链路改投 Doris 速查手册:三条路径对照、output 配置项清单、报错处理表
大数据·数据库
救救孩子把16 分钟前
AI面试八股文-07_6-向量数据库索引详解
数据库·人工智能·面试·向量数据库·hnsw
李白客1 小时前
国产数据库"实际用户增长"怎么核验?先定口径,再谈第一
数据库
数据工匠老o1 小时前
一张 5 亿行的表按月分区后,清理历史数据从几小时变成了几秒
数据库·sql
hwscom2 小时前
几分钟开防护,SQL和XSS注入全被护卫神挡住
数据库·sql·xss
石小千2 小时前
Redis开启ACL认证
数据库·redis·缓存
东风微鸣2 小时前
把 Tailscale 接进 Prometheus 监控
java·数据库·prometheus
wno7042 小时前
MYSQL 常用合并函数
android·数据库·mysql
东风微鸣2 小时前
一次断电引发的血案:Ubuntu 26.04 升级中断后的完整救援实录
数据库·ubuntu·postgresql