mysql length和char_length

  length和char_length都是为了统计字符串的长度,length是按照字节来统计,char_lenght是按照字符来统计。

  位(bit):计算机储存的最小单位。

  字节(byte):计算机处理数据的基本单位。 1bype = 8bit

  字符:计算机使用的符号,字符数字,字。

  utf-8编码:

  1个英文字符 = 1个字节

  英文标点 = 1个字节

  1个汉字 = 3 字节

  1个中文标点 = 3个字节

  应用:utf-8编码中判定某个字段(name)为全中文,length(name) = char_length(name)即可。

原文地址:https://www.cnblogs.com/jayce-yin/p/9982148.html

时间: 2024-10-06 00:54:01

mysql length和char_length的相关文章

Mysql中的char与varchar length()与char_length()

在mysql中,char和varchar都表示字符串类型.但他们存储和检索数据的方式并不相同. 在表结构定义中声明char和varchar类型时,必须指定字符串的长度.也就是该列所能存储多少个字符(不是字节,是字符).例如:char(10)和varchar(10)都能存储10个字符. 声明为char的列长度是固定的,char的长度可选范围在0-255之间.也就是char最大能存储255个字符.如果该列是utf8编码,则该列所占用的字节数=字符数*3.如果是gbk编码则该列所占用的字节数=字符数*

Mysql如何查字段的长度,Mysql中length()、char_length()的区别

1.今天发生了一件有意思的事情,传输的数据大于标准定的字段长度了,我把字段长度调大了,把数据传输过来了.谁知道,人家的数据不符合标准,要删除了重新搞,那么你如何将超长的数据删除呢,或者将超长的数据查询出来. 答:剧透一下,其实使用char_length()查询出来的,就可以把这些删除掉,然后将调大的字段长度调小就行了.备注,我实际操作的字段都是中文字符哈,别再写教程写出血案了. 2.先了解一下,Mysql中length().char_length()的区别. 1).length():mysql里

LENGTH()和CHAR_LENGTH()区别

LENGTH()返回以字节为单位的字符串的长度.CHAR_LENGTH()返回以字符为单位的字符串的长度. 分别对应于java中的str.getBytes().length和str.length(). 测试如下: String str = "2HgO=2Hg+O2↑";System.out.println(str.length()); // 12System.out.println(str.getBytes().length);  // 14 SELECT CHAR_LENGTH(&q

链接mysql的两种方法

使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库. 实例 以下是从命令行中连接mysql服务器的简单实例: [[email protected]]# mysql -u root -p Enter password:****** 在登录成功后会出现 mysql> 命令提示窗口,你可以在上面执行任何 SQL 语句. 以上命令执行后,登录成功输出结果如下: Welcome to the MySQL monitor. Commands end

【MySQL】浅谈 varchar(N)

一  前言  varchar(N) N代表什么意思,能存放多少个中文字符?属于老生常谈的问题了,今天又被一个开发同事问我关于这个问题,索性写一篇文章来具体介绍一下.二 理论知识 先说明一下 MySQL 历来版本对 varchar 的定义:    4.0版本以下,varchar(50),指的是50字节,如果存放UTF8汉字时,只能存16个(每个中文3字节)   5.0版本以上,varchar(50),指的是50字符,无论存放的是数字.字母还是UTF8中文(每个中文3字节),都可以存放50个  存储

mysql<二>

1 -- ########## 01.MySQL的一些基本概念 ########## 2 -- 学习数据库时,应该具备集合论的思想:把数据形成的结果作为一个集合(无序的) 3 -- 关注点在于作为集合的一系列的数据,而不是集合中的单个孤立的数据 4 5 -- 概念描述 物理描述 6 -- Entity实体 -----> table表 7 -- Attribute属性-----> field字段 8 9 -- ########## 02.MySQL的约束 ########## 10 -- 约束:

mysql 基础语法

以下为自己学习mysql 的一些笔记,以方便查询 目录 一. ALTER的 语法 二. 表的完整性约束 三. 索引的操作(mysql 数据库支持至少 16 个索引) 四. 视图的操作 五. 触发器的操作 六. 单表查询数据记录 七. 多表数据记录查询 八. 使用mysql 常用函数 九. mysql 的存储过程和 函数的操作 十. mysql 游标的 使用 十一. mysql 的日志管理 十二. mysql 的维护和 性能提高 十三. mysql 的安全机制 一. ALTER的 语法 1.修改表

MySQL之二:库、储存引擎、表操作

一.库操作 1.数据库命名规则: 可以由字母.数字.下划线.@.#.$ 区分大小写 唯一性 不能使用关键字如 create select 不能单独使用数字 最长128位 2.数据库相关操作 #创建数据库 create database 数据库名 charset utf8; #查看数据库 show databases; show create database db1; select database(); #查看当前所在数据库 #选择数据库 use 数据库名 #删除数据库 drop databa

mysql查询某一个字段是否包含中文字符

在使用mysql时候,某些字段会存储中文字符,或是包含中文字符的串,查询出来的方法是: SELECT col FROM table WHERE length(col)!=char_length(col) 网上搜索有很多种查询方法,但是试了很多都不行,这个是找到的可以使用的查询方法,原理其实很简单,当字符集为UTF-8,并且字符为中文时,length() 和 char_length() 两个方法返回的结果是不相同的. # 以下这两个方法查询字段中是否包含中文 SELECT country FROM