MySQL LENGTH() 函数使用指南

MySQL LENGTH() 函数返回指定字符串的以字节为单位的长度。如果想返回字符的数量,请使用 CHAR_LENGTH() 函数或者 CHARACTER_LENGTH() 函数。

LENGTH() 函数与 OCTET_LENGTH() 函数相同。

LENGTH() 语法

这里是 MySQL LENGTH() 函数的语法:

LENGTH(string)

参数

string
必需的。需要计算长度的字符串。参数可以是其他的类型,比如数字或者日期等,LENGTH() 函数会首先将其转为字符串再计算长度。

返回值

LENGTH(string) 函数返回指定字符串的以字节为单位的长度,即字节的数量。

当参数为 NULL 时, LENGTH() 函数将返回 NULL

LENGTH() 示例

这里列出了几个常见的 LENGTH() 示例。

SELECT
    LENGTH('Hello'),
    LENGTH(''),
    LENGTH(20),
    LENGTH(-20),
    LENGTH(+20),
    LENGTH(NOW()),
    LENGTH(CURDATE()),
    LENGTH('你好'),
    LENGTH(NULL)\G
*************************** 1. row ***************************
  LENGTH('Hello'): 5
       LENGTH(''): 0
       LENGTH(20): 2
      LENGTH(-20): 3
      LENGTH(+20): 2
    LENGTH(NOW()): 19
LENGTH(CURDATE()): 10
    LENGTH('你好'): 6
     LENGTH(NULL): NULL

注意:

  • LENGTH(-20) 的结果是 3。这是因为 -20 对应的字符串是 '-20', LENGTH('-20') 的结果为 3
  • LENGTH(+20) 的结果是 2。这是因为 +20 相当于 20,对应的字符串是 '20', LENGTH('20') 的结果为 2
  • LENGTH(NOW()) 相当于 LENGTH('2021-04-02 21:18:57')
  • LENGTH('你好') 的结果是 6。这是因为我这里用的编码是 UTF-8,其中一个中文字占用 3 个字节。