집 >데이터 베이스 >MySQL 튜토리얼 >MySQL 문자열 함수에 대한 자세한 설명(권장)
1. ASCII
ASCII(str)
문자열 str의 가장 왼쪽 문자의 ASCII 코드 값을 반환합니다. str이 빈 문자열이면 0이 반환됩니다. str이 NULL이면 NULL을 반환합니다.
2.ORD
ORD(str)
문자열 str의 가장 왼쪽 문자가 멀티바이트 문자인 경우 ((첫 번째 바이트 ASCII) 코드)* 256+(두 번째 바이트 ASCII 코드))[*256+세 번째 바이트 ASCII 코드...]는 멀티바이트 문자 코드를 반환할 문자의 ASCII 코드 값을 반환합니다. 가장 왼쪽 문자가 멀티바이트 문자가 아닌 경우. ASCII() 함수에서 반환된 것과 동일한 값을 반환합니다.
3. CONV
CONV(N,from_base,to_base)
다른 숫자 베이스 간에 숫자를 변환합니다. 기본 from_base에서 기본 to_base로 변환된 숫자 N의 문자열 번호를 반환하거나 인수가 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'
4. BIN
BIN(n)
이진 값 N의 문자열 표현을 반환합니다. 여기서 N은 CONV(N,10,2)와 동일한 긴 정수(BIGINT) 숫자입니다. N이 NULL이면 NULL을 반환합니다.
5. OCT
OCT(N)
8진수 값 N의 문자열 표현을 반환합니다. 여기서 N은 CONV(N ,10, 8). N이 NULL이면 NULL을 반환합니다.
6. 헥스
헥스(N)
16진수 값 N의 문자열 표현을 반환합니다. 여기서 N은 CONV(N,10,16)에 해당하는 긴 정수(BIGINT) 숫자입니다. N이 NULL이면 NULL을 반환합니다.
mysql> select HEX(255);
7.CHAR
CHAR(N,...)
CHAR()는 매개변수를 정수로 해석하고 이러한 정수를 반환합니다. ASCII 코드 문자로 구성됩니다. NULL 값은 건너뜁니다.
mysql> select CHAR(77,121,83,81,'76'); -> 'MySQL' mysql> select CHAR(77,77.3,'77.3'); -> 'MMM'
8. CONCAT/CONCAT_WS
•CONCAT(str1,str2,...)
반환 매개변수 연결의 문자열입니다. 인수 중 하나라도 NULL이면 NULL이 반환됩니다. 2개 이상의 매개변수를 가질 수 있습니다. 숫자 인수는 해당하는 문자열 형식으로 변환됩니다.
mysql> select CONCAT('My', 'S', 'QL'); -> 'MySQL' mysql> select CONCAT('My', NULL, 'QL'); -> NULL mysql> select CONCAT(14.3); -> '14.3'
•CONCAT_WS(separator,str1,str2,...)
CONCAT_WS()는 구분 기호가 있는 CONCAT을 나타냅니다.
는 CONCAT()의 특수한 형식입니다. 첫 번째 매개변수는 다른 매개변수에 대한 구분 기호입니다. 구분 기호의 위치는 연결할 두 문자열 사이에 배치됩니다. 구분 기호는 문자열이나 기타 매개변수일 수 있습니다.
SELECT CONCAT_WS(";",id,title) FROM my_table LIMIT 100; SELECT CONCAT_WS(";",'aa','bb') FROM my_table
9. LENGTH/OCTET_LENGTH/CHAR_LENGTH/CHARACTER_LENGTH
LENGTH(str)/OCTET_LENGTH(str): 바이트 수
CHAR_LENGTH(str)/CHARACTER_LENGTH(str): 문자 수
10. LOCATE
이 함수는 멀티바이트로 안정적입니다.
LOCATE(substr,str)
문자열 str에서 하위 문자열 substr이 처음 나타나는 위치를 반환합니다. substr이 str에 없으면 0을 반환합니다.
LOCATE(substr, str ,pos)
pos 위치에서 시작하여 문자열 str에서 부분 문자열 substr이 처음 나타나는 위치를 반환합니다. substr이 str에 없으면 0을 반환합니다.
11. LPAD/RPAD
LPAD(str,len,padstr)
str을 반환하고, str이 len자 길이가 될 때까지 왼쪽에 문자열 padstr을 채웁니다.
RPAD(str,len,padstr)
str이 len자 길이가 될 때까지 문자열 padstr로 오른쪽을 채운 문자열 str을 반환합니다.
12.LELT/RIGHT
LEFT(str,len)
문자열 str의 가장 왼쪽 len 문자를 반환합니다.
RIGHT(str,len)
str 문자열의 가장 오른쪽 len 문자를 반환합니다.
13. SUBSTRING
SUBSTRING(str,pos,len)
문자열 str에서 pos 위치부터 시작하여 len 문자의 하위 문자열을 반환합니다.
SUBSTRING(str,pos)
문자열 str의 시작 위치 pos에서 하위 문자열을 반환합니다.
14.SUBSTRING_INDEX
SUBSTRING_INDEX(str,delim,count)
다음 문자열 str의 개수에 나타나는 구분 기호를 반환합니다. 하위 문자열. 개수가 양수이면 마지막 구분 기호를 왼쪽으로 반환합니다(왼쪽부터 계산).
모든 캐릭터. count가 음수인 경우 마지막 구분 기호 오른쪽에 있는 모든 문자를 반환합니다(오른쪽부터 계산).
이 기능은 멀티바이트에 안정적입니다.
mysql> select SUBSTRING_INDEX('www.mysql.com', '.', 2); -> 'www.mysql' mysql> select SUBSTRING_INDEX('www.mysql.com', '.', -2); -> 'mysql.com'
15. TRIM/LTRIM/RTRIM
TRIM([BOTH | LEADING | TRAILING] [remstr] FROM ] str)
모든 remstr 접두사 또는 접미사가 제거된 문자열 str을 반환합니다. 수정자 BOTH, LEADING 또는 TRAILING이 제공되지 않으면 BOTH가 가정됩니다. remstr을 지정하지 않으면 공백이 제거됩니다.
mysql> select TRIM(' bar '); -> 'bar' mysql> select TRIM(LEADING 'x' FROM 'xxxbarxxx'); -> 'barxxx' mysql> select TRIM(BOTH 'x' FROM 'xxxbarxxx'); -> 'bar' mysql> select TRIM(TRAILING 'xyz' FROM 'barxxyz'); -> 'barx'
LTRIM(str)
문자열 str을 선행 공백 문자가 제거된 상태로 반환합니다.
RTRIM(str)
후행 공백 문자가 제거된 문자열 str을 반환합니다.
16. SPACE
SPACE(N)
N개의 공백 문자로 구성된 문자열을 반환합니다.
Seventeen, REPLACE
REPLACE(str,from_str,to_str)
문자열 str을 반환합니다. 여기서 문자열 from_str은 모두 문자열 to_str로 대체됩니다.
mysql> select REPLACE('www.mysql.com', 'w', 'Ww'); -> 'WwWwWw.mysql.com'
18. REPEAT
REPEAT(str,count)
문자열 str, countTimes 곱하기 문자열로 구성된 문자를 반환합니다. 개수
나인틴, 리버스
REVERSE(str)
返回颠倒字符顺序的字符串str。
二十、INSERT
INSERT(str,pos,len,newstr)
返回字符串str,在位置pos起始的子串且len个字符长得子串由字符串newstr代替。
mysql> select INSERT('Quadratic', 3, 4, 'What'); -> 'QuWhattic'
二十一、ELT
ELT(N,str1,str2,str3,...)
如果N= 1,返回str1,如果N=
2,返回str2,等等。如果N小于1或大于参数个数,返回NULL。ELT()是FIELD()反运算。
二十二、FIELD
FIELD(str,str1,str2,str3,...)
返回str在str1, str2, str3,
...清单的索引。如果str没找到,返回0。FIELD()是ELT()反运算。
二十三、FIND_IN_SET
FIND_IN_SET(str,strlist)
如果字符串str在由N子串组成的表strlist之中,返回一个1到N的值。一个字符串表是被“,”分隔的子串组成的一个字符串。如果第一个参数是一个常数字符串并且第二个参数是一种类型为SET的列,FIND_IN_SET()函数被优化而使用位运算!如果str不是在strlist里面或如果strlist是空字符串,返回0。如果任何一个参数是NULL,返回NULL。如果第一个参数包含一个“,”,该函数将工作不正常。
二十四、MAKE_SET
MAKE_SET(bits,str1,str2,...)
返回一个集合
(包含由“,”字符分隔的子串组成的一个字符串),由相应的位在bits集合中的的字符串组成。str1对应于位0,str2对应位1,等等。在str1, str2,
...中的NULL串不添加到结果中。
mysql> SELECT MAKE_SET(1,'a','b','c'); -> 'a' mysql> SELECT MAKE_SET(1 | 4,'hello','nice','world'); -> 'hello,world' mysql> SELECT MAKE_SET(0,'a','b','c'); -> ''
二十五、EXPORT_SET
EXPORT_SET(bits,on,off,[separator,[number_of_bits])
返回一个字符串,在这里对于在“bits”中设定每一位,你得到一个“on”字符串,并且对于每个复位(reset)的位,你得到一个“off”字符串。每个字符串用“separator”分隔(缺省“,”),并且只有“bits”的“number_of_bits” (缺省64)位被使用。
二十六、LOWER/LCASE/UPPER/UCASE
LCASE(str)/LOWER(str) :返回字符串str,根据当前字符集映射(缺省是ISO-8859-1 Latin1)把所有的字符改变成小写。该函数对多字节是可靠的。
UCASE(str)/UPPER(str) :返回字符串str,根据当前字符集映射(缺省是ISO-8859-1
Latin1)把所有的字符改变成大写。该函数对多字节是可靠的。
二十七、LOAD_FILE
LOAD_FILE(file_name)
读入文件并且作为一个字符串返回文件内容。文件必须在服务器上,你必须指定到文件的完整路径名,而且你必须有file权限。文件必须所有内容都是可读的并且小于max_allowed_packet。如果文件不存在或由于上面原因之一不能被读出,函数返回NULL。
以上就是小编为大家带来的MySQL字符串函数详解(推荐)全部内容了,更多相关文章请关注PHP中文网(www.php.cn)!