mysql內建函數

來源:互聯網
上載者:User

標籤: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時返回一個Null 字元串

25. REPEAT(str,count) 

 返回由count個字串str連成的一個字串(任何參數為NULL時返回NULL,count<=0時返回一個Null 字元串

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內建函數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.