(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/mysql/)
对于针对字符串位置的操作,第一个位置被标记为1。
ASCII(str)
返回字符串str
的最左面字符的ASCII代码值。如果str
是空字符串,返回0
。如果str
是NULL
,返回NULL
。 mysql select ASCII('2'); - 50mysql select ASCII(2); - 50mysql select ASCII('dx'); - 100
也可参见ORD()函数。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/mysql/)ORD(str)
如果字符串str最左面字符是一个多字节字符,通过以格式((first byte ASCII code)*256+(second byte ASCII code))[*256+third byte ASCII code...]
返回字符的ASCII代码值来返回多字节字符代码。如果最左面的字符不是一个多字节字符。返回与ASCII()
函数返回的相同值。mysql select ORD('2'); - 50
CONV(N,from_base,to_base)
在不同的数字基之间变换数字。返回数字N
的字符串数字,从from_base
基变换为to_base
基,如果任何参数是NULL
,返回NULL
。参数N
解释为一个整数,但是可以指定为一个整数或一个字符串。最小基是2
且最大的基是36
。如果to_base
是一个负数,N
被认为是一个有符号数,否则,N
被当作无符号数。 CONV
以64位点精度工作。 mysql select CONV("a",16,2); - '1010'mysql select CONV("6E",18,8); - '172'mysql select CONV(-17,10,-18); - '-H'mysql select CONV(10+"10"+'10'+0xa,10,10); - '40'
BIN(N)
返回二进制值N
的一个字符串表示,在此N
是一个长整数(BIGINT
)数字,这等价于CONV(N,10,2)
。如果N
是NULL
,返回NULL
。 mysql select BIN(12); - '1100'
OCT(N)
返回八进制值N
的一个字符串的表示,在此N
是一个长整型数字,这等价于CONV(N,10,8)
。如果N
是NULL,返回NULL
。 mysql select OCT(12); - '14'
HEX(N)
返回十六进制值N
一个字符串的表示,在此N
是一个长整型(BIGINT
)数字,这等价于CONV(N,10,16)
。如果N
是NULL
,返回NULL
。 mysql select HEX(255); - 'FF'
CHAR(N,...)
CHAR()
将参数解释为整数并且返回由这些整数的ASCII代码字符组成的一个字符串。NULL
值被跳过。 mysql select CHAR(77,121,83,81,'76');