描述:字符串拼接
用法:concat(
str
[,str
])
select concat(1,' test')
> 1 test
描述:特殊的字符串拼接 会已
separator
进行拼接用法:CONCAT_WS(
separator
,str
[,str
])
select CONCAT_WS('|',1,2,3)
> 1|2|3
select CONCAT_WS('|',1)
> 1
描述:指定字符串
str
从pos
下标开始后len
位字符串被newstr
替换。用法:INSERT(
str
,pos
,len
,newstr
)注意:任意参数为
NULL
时返回NULL
。pos
从1
开始
select INSERT("ABCDEFG",1,1,"a"),INSERT("ABCDEFG",1,2,"a")
> aBCDEFG aCDEFG
# pos 如果超出str的下标范围则返回原 str
select INSERT("ABCDEFG",0,2,"a"),INSERT("ABCDEFG",8,2,"a")
> ABCDEFG ABCDEFG
# 当len为0时则代表在pos前插入newstr 当len为为负数时时则代表在str直接被new str替换
select INSERT("ABCDEFG",1,0,"abcdefg"),INSERT("ABCDEFG",1,-1,"abcdefg")
> abcdefgABCDEFG abcdefg
# 任意参数为NULL时返回NULL。
select INSERT("ABCDEFG",1,null,"abcdefg"),INSERT("ABCDEFG",null,-1,"abcdefg")
> NULL NULL
描述:返回
substr
字串在str
中第一次出现的位置,没有找到则返回0 两个函数只是参数值调换了位置注意区分用法:INSTR(
str
,substr
) | LOCATE(substr
,str
)注意*:如果
substr
为"" 空字符串 则会返回 1 不知道这个是不是bug 有点坑。任意参数为NULL
返回NULL
。
select INSTR("abc","b"),INSTR("abc","bc"),INSTR("abc","d"),INSTR("abc","")
> 2 2 0 1
select LOCATE("b","abc"),LOCATE("bc","abc"),LOCATE("d","abc"),LOCATE("","abc")
> 2 2 0 1
描述:两个函数 分别返回
str
左 右 返回len
长度的子串用法:LEFT(
str
,len
)|RIGHT(str
,len
);注意:任意参数为
NULL
返回NULL
select LEFT('ABCDEFG',4),RIGHT('ABCDEFG',4)
> ABCD DEFG
描述:返回
str
的字节数用法:LENGTH(
str
)注意:
UTF-8
编码的中文占3位、GBK
编码的中文占2位
select LENGTH("中文"),LENGTH("ABC")
> 6 3
描述:返回
str
的字符数用法:CHAR_LENGTH(
str
)注意:与LENGTH()不同 中文也只占一位
select CHAR_LENGTH("中文"),CHAR_LENGTH("ABC")
> 2 3
描述:两个函数分别将
str
转化为小写与大写用法:LOWER(
str
) |UPPER(str
)
select LOWER("MySQL"),UPPER("MySQL")
> mysql MYSQL
描述:两个函数分别为 当
str
小于len
长度时 向左|右 填充padstr
用法:LPAD(
str
,len
,padstr
) |RPAD(str
,len
,padstr
)注意:当
len
-1返回的是NULL
select LPAD("HELLO",6,"??"),LPAD("HELLO",-1,"??"),RPAD("HELLO",6,"??"),RPAD("HELLO",-1,"??");
> ?HELLO NULL HELLO? NULL
描述:返回
str
重复count
的字符串用法:REPEAT(
str
,count
)
select REPEAT("ABC|",3)
> ABC|ABC|ABC|
描述:返回
str
中from_str
替换为to_str
后的字符串用法:REPLACE(
str
,from_str
,to_str
)
select REPLACE("www.baidu.com",".","#")
> www#baidu#com