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包含","時工作 異常)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章