目录
[MySQL ASCII() 函数](#MySQL ASCII() 函数)
[MySQL CHAR_LENGTH() 函数](#MySQL CHAR_LENGTH() 函数)
[MySQL CHARACTER_LENGTH() 函数](#MySQL CHARACTER_LENGTH() 函数)
[MySQL CONCAT() 函数](#MySQL CONCAT() 函数)
[MySQL CONCAT_WS() 函数](#MySQL CONCAT_WS() 函数)
[MySQL FIELD() 函数](#MySQL FIELD() 函数)
[MySQL FIND_IN_SET() 函数](#MySQL FIND_IN_SET() 函数)
[MySQL FORMAT() 函数](#MySQL FORMAT() 函数)
[MySQL INSERT() 函数](#MySQL INSERT() 函数)
[MySQL INSTR() 函数](#MySQL INSTR() 函数)
[MySQL LCASE() 函数](#MySQL LCASE() 函数)
[MySQL LEFT() 函数](#MySQL LEFT() 函数)
[MySQL LENGTH() 函数](#MySQL LENGTH() 函数)
[MySQL LOCATE() 函数](#MySQL LOCATE() 函数)
[MySQL LOWER() 函数](#MySQL LOWER() 函数)
[MySQL LPAD() 函数](#MySQL LPAD() 函数)
[MySQL LTRIM() 函数](#MySQL LTRIM() 函数)
[MySQL MID() 函数](#MySQL MID() 函数)
[MySQL POSITION() 函数](#MySQL POSITION() 函数)
[MySQL REPEAT() 函数](#MySQL REPEAT() 函数)
[MySQL REPLACE() 函数](#MySQL REPLACE() 函数)
[MySQL REVERSE() 函数](#MySQL REVERSE() 函数)
[MySQL RIGHT() 函数](#MySQL RIGHT() 函数)
[MySQL RPAD() 函数](#MySQL RPAD() 函数)
[MySQL RTRIM() 函数](#MySQL RTRIM() 函数)
[MySQL SPACE() 函数](#MySQL SPACE() 函数)
[MySQL STRCMP() 函数](#MySQL STRCMP() 函数)
[MySQL SUBSTR() 函数](#MySQL SUBSTR() 函数)
[MySQL SUBSTRING() 函数](#MySQL SUBSTRING() 函数)
[MySQL SUBSTRING_INDEX() 函数](#MySQL SUBSTRING_INDEX() 函数)
[MySQL TRIM() 函数](#MySQL TRIM() 函数)
[MySQL UCASE() 函数](#MySQL UCASE() 函数)
[MySQL UPPER() 函数](#MySQL UPPER() 函数)
MySQL ASCII() 函数
【实例】
返回"CustomerName"中第一个字符的 ASCII 值:
sql
SELECT ASCII(CustomerName) AS NumCodeOfFirstChar
FROM Customers;
【定义和用法】
ASCII() 函数返回特定字符的 ASCII 值。
【语法】
sql
ASCII(character)
【参数值】
参数 | 描述 |
---|---|
character | 必需。要为其返回 ASCII 值的字符。 如果输入多个字符,则只返回第一个字符的值 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
MySQL CHAR_LENGTH() 函数
【实例】
返回字符串的长度:
sql
SELECT CHAR_LENGTH("SQL Tutorial") AS LengthOfString;
【定义和用法】
CHAR_LENGTH() 函数返回字符串的长度(以字符为单位)。
注:此函数等同于 CHARACTER_LENGTH() 函数。
【语法】
sql
CHAR_LENGTH(string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。计算长度的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
返回"CustomerName"列中文本的长度:
sql
SELECT CHAR_LENGTH(CustomerName) AS LengthOfName
FROM Customers;
MySQL CHARACTER_LENGTH() 函数
【实例】
返回字符串的长度:
sql
SELECT CHARACTER_LENGTH("SQL Tutorial") AS LengthOfString;
【定义和用法】
CHARACTER_LENGTH() 函数返回字符串的长度(以字符为单位)。
注:此函数等同于 CHAR_LENGTH() 函数。
【语法】
sql
CHARACTER_LENGTH(string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要计算长度的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
返回"CustomerName"列中文本的长度:
sql
SELECT CHARACTER_LENGTH(CustomerName) AS LengthOfName
FROM Customers;
MySQL CONCAT() 函数
【实例】
将几个字符串加在一起:
sql
SELECT CONCAT("SQL ", "Tutorial ", "is ", "fun!") AS ConcatenatedString;
【定义和用法】
CONCAT() 函数将两个或多个表达式相加。
注:还请查看 CONCAT_WS() 函数。
【语法】
sql
CONCAT(expression1, expression2, expression3,...)
【参数值】
参数 | 描述 |
---|---|
expression1, expression2, expression3, etc. | 必需。要加在一起的表达式。 注:如果任何表达式为 NULL 值,则返回 NULL |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将三列添加到一个"Address"列中:
sql
SELECT CONCAT(Address, " ", PostalCode, " ", City) AS Address
FROM Customers;
MySQL CONCAT_WS() 函数
【实例】
将几个表达式加在一起,并在它们之间添加一个 "-" 分隔符:
sql
SELECT CONCAT_WS("-", "SQL", "Tutorial", "is", "fun!") AS ConcatenatedString;
【定义和用法】
CONCAT_WS() 函数将两个或多个表达式与分隔符相加。
注: 还要查看 CONCAT() 函数。
【语法】
sql
CONCAT_WS(separator, expression1, expression2, expression3,...)
【参数值】
参数 | 描述 |
---|---|
separator | 必需。在每个表达式之间添加的分隔符。 如果 separator 为 NULL,则此函数返回 NULL |
表达式1、 表达式2、 表达式3、 等 | 必须。要加在一起的表达式。 将跳过具有 NULL 值的表达式 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将三列(并在它们之间添加一个空格)添加到一个"地址"列中:
sql
SELECT CONCAT_WS(" ", Address, PostalCode, City) AS Address
FROM Customers;
MySQL FIELD() 函数
【实例】
返回 "q" 在字符串列表中的索引位置:
sql
SELECT FIELD("q", "s", "q", "l");
【定义和用法】
FIELD() 函数返回值在值列表中的索引位置。
此函数执行不区分大小写的搜索。
注:如果在值列表中找不到指定的值,此函数将返回 0。如果值为 NULL,此函数将返回 0。
【语法】
sql
FIELD(value, val1, val2, val3, ...)
【参数值】
参数 | 描述 |
---|---|
value | 必需。要在列表中搜索的值 |
val1 , val2 , val3, .... | 必需。要搜索的值列表 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
返回 "c" 在字符串列表中的索引位置:
sql
SELECT FIELD("c", "a", "b");
【实例】
返回 "Q" 在字符串列表中的索引位置:
sql
SELECT FIELD("Q", "s", "q", "l");
【实例】
返回5在数字列表中的索引位置:
sql
SELECT FIELD(5, 0, 1, 2, 3, 4, 5);
MySQL FIND_IN_SET() 函数
【实例】
在字符串列表中搜索"q":
sql
SELECT FIND_IN_SET("q", "s,q,l");
【定义和用法】
FIND_IN_SET() 函数返回字符串在字符串列表中的位置。
【语法】
sql
FIND_IN_SET(string, string_list)
【参数值】
参数 | 描述 |
---|---|
string | 必需。 要搜索的字符串 |
string_list | 必须。要搜索的字符串值列表(逗号分隔) |
【返回值】
- 如果在string_list 中没有找到string,这个函数返回0
- 如果 string 或 string_list 为 NULL,则此函数返回 NULL
- 如果string_list是一个空字符串(""),这个函数返回0
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
在字符串列表中搜索"a":
sql
SELECT FIND_IN_SET("a", "s,q,l");
【实例】
在字符串列表中搜索"q"(字符串列表为NULL):
sql
SELECT FIND_IN_SET("q", null);
MySQL FORMAT() 函数
【实例】
将数字格式化为"#,###,###.##" (并保留两位小数):
sql
SELECT FORMAT(250500.5634, 2);
【定义和用法】
FORMAT() 函数将数字格式化为像"#,###,###.##"这样的格式,四舍五入到指定的小数位数,然后将结果作为字符串返回。
【语法】
sql
FORMAT(number, decimal_places)
【参数值】
参数 | 描述 |
---|---|
number | 必需。要格式化的数字 |
decimal_places | 必需。*number的小数位数。*如果该参数为0,则该函数返回一个没有小数位的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将数字格式化为"#,###,###.##"的格式 (并以 0 位小数进行四舍五入):
sql
SELECT FORMAT(250500.5634, 0);
MySQL INSERT() 函数
【实例】
将字符串"Example"插入字符串"W3Schools.cn"。 替换前九个字符:
sql
SELECT INSERT("W3Schools.cn", 1, 9, "Example");
【定义和用法】
INSERT() 函数在字符串中的指定位置插入一个字符串,并插入一定数量的字符。
【语法】
sql
INSERT(string, position, number, string2)
【参数值】
参数 | 描述 |
---|---|
string | 必需。将要修改的字符串 |
position | 必需。插入string2 |
number | 必需。要替换的字符数 |
string2 | 必需。要插入到string |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将字符串"no"插入字符串"W3Schools.cn"。 替换三个字符,从位置 11 开始:
sql
SELECT INSERT("W3Schools.cn", 11, 3, "no");
MySQL INSTR() 函数
【实例】
在字符串"W3Schools.cn"中搜索"3",返回位置:
sql
SELECT INSTR("W3Schools.cn", "3") AS MatchPosition;
【定义和用法】
INSTR() 函数返回一个字符串在另一个字符串中第一次出现的位置。
此函数执行不区分大小写的搜索。
【语法】
sql
INSTR(string1, string2)
【参数值】
参数 | 描述 |
---|---|
string1 | 必需。将要搜索的字符串 |
string2 | 必需。要在 string1 中搜索的字符串。 如果没有找到string2,这个函数返回0 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
在字符串"W3Schools.cn"中搜索"cn",返回位置:
sql
SELECT INSTR("W3Schools.cn", "cn") AS MatchPosition;
【实例】
在CustomerName列搜索"a",返回位置:
sql
SELECT INSTR(CustomerName, "a")
FROM Customers;
MySQL LCASE() 函数
【实例】
将文本转换为小写:
sql
SELECT LCASE("SQL Tutorial is FUN!");
【定义和用法】
LCASE() 函数将字符串转换为小写。
注: LOWER() 函数是 LCASE() 函数的同义词。
【语法】
sql
LCASE(text)
【参数值】
参数 | 描述 |
---|---|
text | 必需。要转换的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将"CustomerName"中的文本转换为小写:
sql
SELECT LCASE(CustomerName) AS LowercaseCustomerName
FROM Customers;
MySQL LEFT() 函数
【实例】
从字符串中提取3个字符(从左开始):
sql
SELECT LEFT("SQL Tutorial", 3) AS ExtractString;
【定义和用法】
LEFT() 函数从字符串中提取多个字符(从左开始)。
提示:同时查看RIGHT()函数。
【语法】
sql
LEFT(string, number_of_chars)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要从中提取的字符串 |
number_of_chars | 必需。要提取的字符数。 如果该参数大于string 中的字符数,该函数将返回string |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
从"CustomerName"列的文本中提取5个字符(从左开始):
sql
SELECT LEFT(CustomerName, 5) AS ExtractString
FROM Customers;
MySQL LENGTH() 函数
【实例】
返回字符串的长度,以字节为单位:
sql
SELECT LENGTH("SQL Tutorial") AS LengthOfString;
【定义和用法】
LENGTH() 函数返回字符串的长度(以字节为单位)。
【语法】
sql
LENGTH(string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。计算长度的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
返回"CustomerName"列中文本的长度,以字节为单位:
sql
SELECT LENGTH(CustomerName) AS LengthOfName
FROM Customers;
MySQL LOCATE() 函数
【实例】
在字符串"W3Schools.cn"中搜索"3",返回位置:
sql
SELECT LOCATE("3", "W3Schools.cn") AS MatchPosition;
【定义和用法】
LOCATE() 函数返回字符串中子字符串第一次出现的位置。
如果在原始字符串中找不到子字符串,则此函数返回 0。
此函数执行不区分大小写的搜索。
注:此函数等同于 POSITION() 函数。
【语法】
sql
LOCATE(substring, string, start)
【参数值】
参数 | 描述 |
---|---|
substring | 必需。要在 string |
string | 必需。要搜索的字符串 |
start | 可选。 搜索的起始位置。 位置 1 为默认值 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
在字符串"W3Schools.cn"中搜索"cn"(从位置3开始),返回位置:
sql
SELECT LOCATE("cn", "W3Schools.cn", 3) AS MatchPosition;
【实例】
在 CustomerName 列搜索"a",返回位置:
sql
SELECT LOCATE("a", CustomerName)
FROM Customers;
MySQL LOWER() 函数
【实例】
将文本转换为小写:
sql
SELECT LOWER("SQL Tutorial is FUN!");
【定义和用法】
LOWER() 函数将字符串转换为小写。
注: LCASE() 函数等于 LOWER() 函数。
【语法】
sql
LOWER(text)
【参数值】
参数 | 描述 |
---|---|
text | 必需。要转换的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将"CustomerName"中的文本转换为小写:
sql
SELECT LOWER(CustomerName) AS LowercaseCustomerName
FROM Customers;
MySQL LPAD() 函数
【实例】
用 "ABC" 向左填充字符串,总长度为 20:
sql
SELECT LPAD("SQL Tutorial", 20, "ABC");
【定义和用法】
LPAD() 函数用另一个字符串向左填充一个字符串,达到一定的长度。
注:还请查看 RPAD() 函数。
【语法】
sql
LPAD(string, length, lpad_string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。原始字符串。 如果原始字符串的长度大于 length 参数,此函数将删除 string |
length | 必需。 左填充后的字符串长度 |
lpad_string | 必需。左填充到 string 的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
在"CustomerName"中的文本左填充 "ABC",总长度为30:
sql
SELECT LPAD(CustomerName, 30, "ABC") AS LeftPadCustomerName
FROM Customers;
MySQL LTRIM() 函数
【实例】
从字符串中删除前导空格:
sql
SELECT LTRIM(" SQL Tutorial") AS LeftTrimmedString;
【定义和用法】
LTRIM() 函数从字符串中删除前导空格。
【语法】
sql
LTRIM(string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。删除前导空格的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
MySQL MID() 函数
【实例】
从字符串中提取子字符串(从位置5开始,提取3个字符):
sql
SELECT MID("SQL Tutorial", 5, 3) AS ExtractString;
【定义和用法】
MID() 函数从字符串中提取子字符串(从任意位置开始)。
注: MID() 和 SUBSTR() 函数等于 SUBSTRING() 函数。
【语法】
sql
MID(string, start, length)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要从中提取的字符串 |
start | 必需。 起始位置。 可以是正数或负数。 如果是正数,则此函数从字符串的开头提取。 如果是负数,此函数从字符串的末尾提取 |
length | 必需。要提取的字符数 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
从列中的文本中提取一个子字符串(从位置 2 开始,提取 5 个字符):
sql
SELECT MID(CustomerName, 2, 5) AS ExtractString
FROM Customers;
【实例】
从字符串中提取子串(从末尾开始,位置-5,提取5个字符):
sql
SELECT MID("SQL Tutorial", -5, 5) AS ExtractString;
MySQL POSITION() 函数
【实例】
在字符串"W3Schools.cn"中搜索"3",返回位置:
sql
SELECT POSITION("3" IN "W3Schools.cn") AS MatchPosition;
【定义和用法】
POSITION() 函数返回字符串中子字符串第一次出现的位置。
如果在原始字符串中找不到子字符串,则此函数返回 0。
此函数执行不区分大小写的搜索。
注: LOCATE() 函数等同于 POSITION() 函数。
【语法】
sql
POSITION(substring IN string)
【参数值】
参数 | 描述 |
---|---|
substring | 必需。要在 string 中搜索的子字符串 |
string | 必需。将被搜索的原始字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
在字符串"W3Schools.cn"中搜索"cn",返回位置:
sql
SELECT POSITION("cn" IN "W3Schools.cn") AS MatchPosition;
【实例】
在CustomerName列搜索"a",返回位置:
sql
SELECT POSITION("a" IN CustomerName)
FROM Customers;
MySQL REPEAT() 函数
【实例】
重复一个字符串 3 次:
sql
SELECT REPEAT("SQL Tutorial", 3);
【定义和用法】
REPEAT() 函数将字符串重复指定的次数。
【语法】
sql
REPEAT(string, number)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要重复的字符串 |
number | 必需。重复字符串的次数 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将 CustomerName 中的文本重复 2 次:
sql
SELECT REPEAT(CustomerName, 2)
FROM Customers;
【实例】
重复字符串0次:
sql
SELECT REPEAT("SQL Tutorial", 0);
MySQL REPLACE() 函数
【实例】
将 "SQL" 替换为 "HTML":
sql
SELECT REPLACE("SQL Tutorial", "SQL", "HTML");
【定义和用法】
REPLACE() 函数将字符串中所有出现的子字符串替换为新的子字符串。
注:此函数执行区分大小写的替换。
【语法】
sql
REPLACE(string, from_string, new_string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。原字符串 |
from_string | 必需。要替换的子字符串 |
new_string | 必需。新的替换子字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将 "X" 替换为 "M":
sql
SELECT REPLACE("XYZ FGH XYZ", "X", "M");
【实例】
将 "X" 替换为 "m":
sql
SELECT REPLACE("XYZ FGH XYZ", "X", "m");
【实例】
将 "x" 替换为 "m":
sql
SELECT REPLACE("XYZ FGH XYZ", "x", "m");
MySQL REVERSE() 函数
【实例】
反转一个字符串:
sql
SELECT REVERSE("SQL Tutorial");
【定义和用法】
REVERSE() 函数反转字符串并返回结果。
【语法】
sql
REVERSE(string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要反转的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
反转 CustomerName 中的文本:
sql
SELECT REVERSE(CustomerName)
FROM Customers;
MySQL RIGHT() 函数
【实例】
从字符串中提取4个字符(从右开始):
sql
SELECT RIGHT("SQL Tutorial is cool", 4) AS ExtractString;
【定义和用法】
RIGHT() 函数从字符串中提取多个字符(从右开始)。
注:同时查看LEFT()函数。
【语法】
sql
RIGHT(string, number_of_chars)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要从中提取的字符串 |
number_of_chars | 必需。要提取的字符数。 如果该参数大于string 中的字符数,该函数将返回string |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
从 "CustomerName" 列的文本中提取5个字符(从右开始):
sql
SELECT RIGHT(CustomerName, 5) AS ExtractString
FROM Customers;
MySQL RPAD() 函数
【实例】
用"ABC"右填充字符串,总长度为 20:
sql
SELECT RPAD("SQL Tutorial", 20, "ABC");
【定义和用法】
RPAD() 函数将一个字符串与另一个字符串右填充到一定长度。
注:还请查看 LPAD() 函数。
【语法】
sql
RPAD(string, length, rpad_string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。原始字符串。 如果原始字符串的长度大于 length 参数,此函数将删除 string |
长度 | 必需。右填充后的字符串长度 |
rpad_string | 必需。要右填充到string |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
在"CustomerName"中的文本右填充 "ABC",总长度为30:
sql
SELECT RPAD(CustomerName, 30, "ABC") AS RightPadCustomerName
FROM Customers;
MySQL RTRIM() 函数
【实例】
从字符串中删除尾随空格:
sql
SELECT RTRIM("SQL Tutorial ") AS RightTrimmedString;
【定义和用法】
RTRIM() 函数从字符串中删除尾随空格。
【语法】
sql
RTRIM(string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。删除尾随空格的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
MySQL SPACE() 函数
【实例】
返回一个包含 10 个空格字符的字符串:
sql
SELECT SPACE(10);
【定义和用法】
SPACE() 函数返回指定数量的空格字符的字符串。
【语法】
sql
SPACE(number)
【参数值】
参数 | 描述 |
---|---|
number | 必需。返回的空格字符数 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
MySQL STRCMP() 函数
【实例】
比较两个字符串:
sql
SELECT STRCMP("SQL Tutorial", "SQL Tutorial");
【定义和用法】
STRCMP() 函数比较两个字符串。
【语法】
sql
STRCMP(string1, string2)
【参数值】
参数 | 描述 |
---|---|
string1, string2 | 必需。要比较的两个字符串 |
【返回值】
- 如果string1 = string2,这个函数返回0
- 如果 string1 < string2,这个函数返回-1
- 如果 string1 > string2,这个函数返回1
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
比较两个字符串:
sql
SELECT STRCMP("SQL Tutorial", "HTML Tutorial");
MySQL SUBSTR() 函数
【实例】
从字符串中提取子字符串(从位置5开始,提取3个字符):
sql
SELECT SUBSTR("SQL Tutorial", 5, 3) AS ExtractString;
【定义和用法】
SUBSTR() 函数从字符串中提取子字符串(从任意位置开始)。
注: SUBSTR() 和 MID() 函数等于 SUBSTRING( ) 函数。
【语法】
sql
SUBSTR(string, start, length)
或者:
sql
SUBSTR(string FROM start FOR length)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要从中提取的字符串 |
start | 必需。起始位置。 可以是正数或负数。 如果是正数,则此函数从字符串的开头提取。 如果是负数,此函数从字符串的末尾提取 |
length | 可选。要提取的字符数。 如果省略,将返回整个字符串(从 start 位置开始) |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
从列中的文本中提取一个子字符串(从位置 2 开始,提取 5 个字符):
sql
SELECT SUBSTR(CustomerName, 2, 5) AS ExtractString
FROM Customers;
【实例】
从字符串中提取子串(从末尾开始,位置-5,提取5个字符):
sql
SELECT SUBSTR("SQL Tutorial", -5, 5) AS ExtractString;
MySQL SUBSTRING() 函数
【实例】
从字符串中提取子字符串(从位置5开始,提取3个字符):
sql
SELECT SUBSTRING("SQL Tutorial", 5, 3) AS ExtractString;
【定义和用法】
SUBSTRING() 函数从字符串中提取子字符串(从任意位置开始)。
注: SUBSTR() 和 MID() 函数等于 到 SUBSTRING() 函数。
【语法】
sql
SUBSTRING(string, start, length)
或者:
sql
SUBSTRING(string FROM start FOR length)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要从中提取的字符串 |
start | 必需。 起始位置。 可以是正数也可以是负数。如果是正数,此函数从字符串的开头提取。 如果是负数,此函数从字符串的末尾提取 |
length | 可选。要提取的字符数。 如果省略,将返回整个字符串(从 start 位置开始) |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
从列中的文本中提取一个子字符串(从位置 2 开始,提取 5 个字符):
sql
SELECT SUBSTRING(CustomerName, 2, 5) AS ExtractString
FROM Customers;
【实例】
从字符串中提取子串(从末尾开始,位置-5,提取5个字符):
sql
SELECT SUBSTRING("SQL Tutorial", -5, 5) AS ExtractString;
MySQL SUBSTRING_INDEX() 函数
【实例】
在出现指定数量的分隔符之前返回字符串的子字符串:
sql
SELECT SUBSTRING_INDEX("www.w3schools.cn", ".", 1);
【定义和用法】
SUBSTRING_INDEX() 函数返回一个字符串在出现指定数量的分隔符之前的子字符串。
【语法】
sql
SUBSTRING_INDEX(string, delimiter, number)
【参数值】
参数 | 描述 |
---|---|
string | 必需。原字符串 |
delimiter | 必需。要搜索的分隔符 |
number | 必需。搜索delimiter 分隔符可以是正数或负数。 如果它是一个正数,这个函数返回所有到delimiter 分隔符的左边。 如果是负数,这个函数返回delimiter分隔符右边的所有。 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
在出现指定数量的分隔符之前返回字符串的子字符串:
sql
SELECT SUBSTRING_INDEX("www.w3schools.cn", ".", 2);
MySQL TRIM() 函数
【实例】
从字符串中删除前导和尾随空格:
sql
SELECT TRIM(' SQL Tutorial ') AS TrimmedString;
【定义和用法】
TRIM() 函数从字符串中删除前导和尾随空格。
【语法】
sql
TRIM(string)
【参数值】
参数 | 描述 |
---|---|
string | 必需。要从中删除前导和尾随空格的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
MySQL UCASE() 函数
【实例】
将文本转换为大写:
sql
SELECT UCASE("SQL Tutorial is FUN!");
【定义和用法】
UCASE() 函数将字符串转换为大写。
注:此函数等同于 UPPER() 函数。
【语法】
sql
UCASE(text)
【参数值】
参数 | 描述 |
---|---|
text | 必需。要转换的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将"CustomerName"中的文本转换为大写:
sql
SELECT UCASE(CustomerName) AS UppercaseCustomerName
FROM Customers;
MySQL UPPER() 函数
【实例】
将文本转换为大写:
sql
SELECT UPPER("SQL Tutorial is FUN!");
【定义和用法】
UPPER() 函数将字符串转换为大写。
注:此函数等同于 UCASE() 函数。
【语法】
sql
UPPER(text)
【参数值】
参数 | 描述 |
---|---|
text | 必需。要转换的字符串 |
【技术细节】
适用于: | From MySQL 4.0 |
---|
【实例】
将"CustomerName"中的文本转换为大写:
sql
SELECT UPPER(CustomerName) AS UppercaseCustomerName
FROM Customers;