mysql内置函数

  1. ASCII(str) 返回字符串的ASCII码,如:select ASCII('a')的返回值是97 ;

  2. ORD(str)字符串str句首是单字节返回与ASCII()函数返回的相同值。

    如:select ORD('0')的返回值是48

  3. CONV(N,from_base,to_base) 

     对数字N进制转换,并转换为字串返回(任何参数为NULL时返回NULL,进制范围为2-36进制,当to_base是负数时N作为有符号数否则作无符号数,CONV以64位点精度工作) 如:select CONV(10,10,2)的返回值是1010

4. BIN(N) 把N转为二进制值并以字串返回 如:select BIN(10)的返回值是1010

5. OCT(N) 把N转为八进制值并以字串返回 如:select OCT(10)的返回值是12

6. HEX(N) 把N转为十六进制并以字串返回 如:select HEX(10)的返回值是A

7.CHAR(N,...) 返回由参数N,...对应的ASCII代码字符组成的一个字串(参数是N,...是数字序列,NULL值被跳过) 如:SELECT CHAR(77,121,83,81,'76')的返回值是MySQL

8. CONCAT(str1,str2,...)把参数连成一个长字符串并返回(任何参数是NULL时返回NULL) 

 如:SELECT CONCAT('j','g','c')的返回值是jgc

9. LENGTH(str) OCTET_LENGTH(str) CHAR_LENGTH(str) CHARACTER_LENGTH(str) 

 返回字符串str的长度(对于多字节字符CHAR_LENGTH仅计算一次) 如:SELECT LENGTH('jgc')的返回值是3

10. LOCATE(substr,str,pos) 

 返回字符串substr在字符串str的第pos个位置起第一次出现的位置(str不包含substr时返回0)

 如:SELECT LOCATE('gc','jgc',1)的返回值是2

11. INSTR(str,substr) 

 返回字符串substr在字符串str第一次出现的位置(str不包含substr时返回0)

 如:SELECT INSTR('hello','lo');的返回值是4

12. RPAD(str,len,padstr) 

 用字符串padstr填补str右端直到字串长度为len并返回 

 如:SELECT RPAD('jgc',4,'q')的返回值是jgcq

13. LEFT(str,len) 

 返回字符串str的左端len个字符 如:SELECT lEFT('jgc',2)的返回值是jg

14. RIGHT(str,len) 

 返回字符串str的右端len个字符

15.SUBSTRING(str,pos,len) 

  SUBSTRING(str FROM pos FOR len) MID(str,pos,len) 

 返回字符串str的位置pos起len个字符(使用FROM的丑陋语法是ANSI SQL92标准)

16. SUBSTRING(str,pos) SUBSTRING(str FROM pos) 

 返回字符串str的位置pos起的一个子串

17. SUBSTRING_INDEX(str,delim,count) 

 返回从字符串str的第count个出现的分隔符delim之后的子串(count为正数时返回左端,否则返回右端子串)

 如:SELECT SUBSTRING_INDEX('jgc,is,a,kind,people',',',-2)的返回值是kind,people

18. LTRIM(str) 

 返回删除了左空格的字符串str

19 RTRIM(str) 

 返回删除了右空格的字符串str

20. TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str)  返回前缀或后缀remstr被删除了的字符串str(位置参数默认BOTH,remstr默认值为空格)

21.SOUNDEX(str) 

 返回str的一个同音字符串(听起来“大致相同”字符串有相同的同音字符串,非数字字母字符被忽略,在A-Z外 的字母被当作元音) (没懂)

22.SPACE(N) 

 返回由N个空格字符组成的一个字符串

23. REPLACE(str,from_str,to_str) 

 用字符串to_str替换字符串str中的子串from_str并返回

24.REPEAT(str,count) 

 返回由count个字符串str连成的一个字符串(任何参数为NULL时返回NULL,count<=0时返回一个空字符串

25. REPEAT(str,count) 

 返回由count个字符串str连成的一个字符串(任何参数为NULL时返回NULL,count<=0时返回一个空字符串

26.INSERT(str,pos,len,newstr) 

 把字符串str由位置pos起len个字符长的子串替换为字符串newstr并返回

27. ELT(N,str1,str2,str3,...) 

 返回第N个字符串(N小于1或大于参数个数返回NULL)

28. FIELD(str,str1,str2,str3,...) 

 返回str等于其后的第N个字符串的序号(如果str没找到返回0)

29.  TIME_TO_SEC(time)   返回time值有多少秒

30. SEC_TO_TIME(seconds)  

 以'HH:MM:SS'或HHMMSS格式返回秒数转成的TIME值(根据返回值所处上下文是字符串或数字)

 如:SELECT SEC_TO_TIME(30)的返回值是00:00:30

31.NOW()  SYSDATE()  

CURRENT_TIMESTAMP() 

 以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回当前日期时间(根据返回值所处上下文是字 符串或数字) 

32. CURTIME()  CURRENT_TIME() 

 以'HH:MM:SS'或HHMMSS格式返回当前时间值(根据返回值所处上下文是字符串或数字)

33. CURDATE()   CURRENT_DATE() 

 以'YYYY-MM-DD'或YYYYMMDD格式返回当前日期值(根据返回值所处上下文是字符串或数字)


34. DATE_FORMAT(date,format)   根据format字符串格式化date值

35.TO_DAYS(date)  

 返回日期date是西元0年至今多少天(不计算1582年以前) 

36. DATE_ADD(date,INTERVAL expr type) DATE_SUB(date,INTERVAL expr type)  ADDDATE(date,INTERVAL expr type)  SUBDATE(date,INTERVAL expr type)  对日期时间进行加减法运算 

37. PERIOD_DIFF(P1,P2)  

 返回在时期P1和P2之间月数(P1和P2的格式YYMM或YYYYMM) 如:SELECT PERIOD_DIFF(199210,199212)的返回值是-2

38. PERIOD_ADD(P,N)  

 增加N个月到时期P并返回(P的格式YYMM或YYYYMM) 如SELECT PERIOD_ADD(199210,2)的返回值是199212

39. SECOND(time)  

 返回time的秒数(范围是0到59)

40. MINUTE(time)  

 返回time的分钟数(范围是0到59)

41. HOUR(time)  

 返回time的小时数(范围是0到23)

42. YEAR(date)  

 返回date的年份(范围在1000到9999)

43. WEEK(date,first) 

 返回date是一年的第几周(first默认值0,first取值1表示周一是周的开始,0从周日开始)

 如:SELECT WEEK('2015-8-21')的返回值是33

44. QUARTER(date)  

 返回date是一年的第几个季度 

45. MONTHNAME(date)  

 返回date是几月(按英文名返回)

46. DAYNAME(date)  

 返回date是星期几(按英文名返回)

47. MONTH(date)  

 返回date中的月份数值

48. DAYOFYEAR(date)  

 返回date是一年中的第几日(在1到366范围内)

49. DAYOFMONTH(date)  

 返回date是一月中的第几日(在1到31范围内) 

50. WEEKDAY(date)  

 返回日期date是星期几(0=星期一,1=星期二,6= 星期天)

51. DAYOFWEEK(date)  

 返回日期date是星期几(1=星期天,2=星期一,7=星期六,ODBC标准)

52.GREATEST(X,Y,...)  

 返回最大值(其余同LEAST()) 如:SELECT GREATEST(12,32,45)返回45

53. LEAST(X,Y,...)  

 返回最小值(如果返回值被用在整数(实数或大小敏感字串)上下文或所有参数都是整数(实数或大小敏感字 

串)则他们作为整数(实数或大小敏感字串)比较,否则按忽略大小写的字符串被比较)

54. TRUNCATE(N,D)  

 保留数字N的D位小数并返回

55.RADIANS(N) 

 把N从角度变换为弧度并返回

56. DEGREES(N) 

 把N从弧度变换为角度并返回

57. RAND() RAND(N)  

 返回在范围0到1.0内的随机浮点值(可以使用数字N作为初始值)

58.COT(N) 

 返回X的余切

59. ATAN2(X,Y)  

 返回2个变量X和Y的反正切(类似Y/X的反正切,符号决定象限

60. ATAN(N) 

 返回N的反正切值

61. ASIN(N) 

 返回N反正弦值

62. ACOS(N) 

 返回N反余弦(N是余弦值,在-1到1的范围,否则返回NULL

63. TAN(N) 

 返回N的正切值

64.SIN(N) 

 返回N的正弦值

65. COS(N) 

 返回N的余弦值 

66. PI()   返回圆周率

67. POW(X,Y)  POWER(X,Y)   返回值X的Y次幂 SQRT(N) 

 返回非负数N的平方根

68. LOG10(N) 

 返回N以10为底的对数

69.LOG(N) 

 返回N的自然对数

70. EXP(N) 

 返回值e的N次方(自然对数的底

71. ROUND(N,D) 

 返回N的四舍五入值,保留D位小数(D的默认值为0)

72. CEILING(N) 

 返回不小于N的最小整数值

73. FLOOR(N) 

 返回不大于N的最大整数值

74. MOD(N,M)  

 取模运算,返回N被M除的余数(同%操作符)

75.SIGN(N) 

 返回参数的符号(为-1、0或1)

76. ABS(N) 

 返回N的绝对值

77. LOAD_FILE(file_name) 

 读入文件并且作为一个字符串返回文件内容(文件无法找到,路径不完整,没有权限,长度大于

78.UCASE(str) UPPER(str) 

 返回大写的字符串str

79. LCASE(str) LOWER(str) 

 返回小写的字符串str

80. EXPORT_SET(bits,on,off,[separator,[number_of_bits]])  按bits排列字符串集,只有当位等于1时插入字串on,否则插入off(separator默认值",",number_of_bits参数使 用时长度不足补0而过长截断) 

81. MAKE_SET(bits,str1,str2,...) 

 把参数1的数字转为二进制,假如某个位置的二进制位等于1,对应位置的字串选入字串集并返回(NULL串不 添加到结果中)

82.FIND_IN_SET(str,strlist) 

 返回str在字符串集strlist中的序号(任何参数是NULL则返回NULL,如果str没找到返回0,参数1包含","时工作 异常)


你可能感兴趣的:(mysql,内置函数)