MySQL函数大全 及用法示例
字符串函數
ASCII(str)???
返回字符串str的第一個字符的ASCII值(str是空串時返回0)??
mysql> select ASCII('2');??
-> 50??
mysql> select ASCII(2);??
-> 50??
mysql> select ASCII('dete');??
-> 100??
?
ORD(str)???
如果字符串str句首是單字節返回與ASCII()函數返回的相同值。
?
如果是一個多字節字符,以格式返回((first byte ASCII code)
*256+(second byte ASCII code))[*256+third byte ASCII
code...]??
mysql> select ORD('2');??
-> 50??
???
CONV(N,from_base,to_base)???
對數字N進制轉換,并轉換為字串返回(任何參數為NULL時返回
NULL,進制范圍為2-36進制,當to_base是負數時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))??
mysql> select BIN(12);??
-> '1100'?
?
OCT(N)???
把N轉為八進制值并以字串返回(N是BIGINT數字,等價于CONV
(N,10,8))??
mysql> select OCT(12);??
-> '14'?
???
HEX(N)???
把N轉為十六進制并以字串返回(N是BIGINT數字,等價于CONV
(N,10,16))??
mysql> select HEX(255);??
-> 'FF'?
???
CHAR(N,...)???
返回由參數N,...對應的ASCII代碼字符組成的一個字串(參數是
N,...是數字序列,NULL值被跳過)???
mysql> select CHAR(77,121,83,81,'76');??
-> 'MySQL'?
mysql> select CHAR(77,77.3,'77.3');??
-> 'MMM'?
???
CONCAT(str1,str2,...)???
把參數連成一個長字符串并返回(任何參數是NULL時返回NULL)??
?
mysql> select CONCAT('My', 'S', 'QL');??
-> 'MySQL'?
mysql> select CONCAT('My', NULL, 'QL');??
-> NULL?
mysql> select CONCAT(14.3);??
-> '14.3'?
?
LENGTH(str)???
OCTET_LENGTH(str)??
CHAR_LENGTH(str)??
CHARACTER_LENGTH(str)??
返回字符串str的長度(對于多字節字符CHAR_LENGTH僅計算一次)
?
mysql> select LENGTH('text');??
-> 4??
mysql> select OCTET_LENGTH('text');??
-> 4??
?
LOCATE(substr,str)???
POSITION(substr IN str)???
返回字符串substr在字符串str第一次出現的位置(str不包含
substr時返回0)??
mysql> select LOCATE('bar', 'foobarbar');??
-> 4??
mysql> select LOCATE('xbar', 'foobar');??
-> 0??
????
LOCATE(substr,str,pos)??
返回字符串substr在字符串str的第pos個位置起第一次出現的位
置(str不包含substr時返回0)??
mysql> select LOCATE('bar', 'foobarbar',5);??
-> 7??
?
INSTR(str,substr)???
返回字符串substr在字符串str第一次出現的位置(str不包含
substr時返回0)??
mysql> select INSTR('foobarbar', 'bar');??
-> 4??
mysql> select INSTR('xbar', 'foobar');??
-> 0???
?
LPAD(str,len,padstr)???
用字符串padstr填補str左端直到字串長度為len并返回??
mysql> select LPAD('hi',4,'??');??
-> '??hi'?
???
RPAD(str,len,padstr)???
用字符串padstr填補str右端直到字串長度為len并返回??
mysql> select RPAD('hi',5,'?');??
-> 'hi???'?
?
LEFT(str,len)???
返回字符串str的左端len個字符??
mysql> select LEFT('foobarbar', 5);??
-> 'fooba'?
?
RIGHT(str,len)???
返回字符串str的右端len個字符???
mysql> select RIGHT('foobarbar', 4);??
-> 'rbar'?
?
SUBSTRING(str,pos,len)???
SUBSTRING(str FROM pos FOR len)???
MID(str,pos,len)???
返回字符串str的位置pos起len個字符(使用FROM的丑陋語法是
ANSI SQL92標準)??
mysql> select SUBSTRING('Quadratically',5,6);??
-> 'ratica'?
?
SUBSTRING(str,pos)???
SUBSTRING(str FROM pos)???
返回字符串str的位置pos起的一個子串??
mysql> select SUBSTRING('Quadratically',5);??
-> 'ratically'?
mysql> select SUBSTRING('foobarbar' FROM 4);??
-> 'barbar'?
?
SUBSTRING_INDEX(str,delim,count)???
返回從字符串str的第count個出現的分隔符delim之后的子串
(count為正數時返回左端,否則返回右端子串)??
mysql> select SUBSTRING_INDEX('www.mysql.com', '.', 2);??
-> 'www.mysql'?
mysql> select SUBSTRING_INDEX('www.mysql.com', '.', -2);??
-> 'mysql.com'?
?
LTRIM(str)???
返回刪除了左空格的字符串str??
mysql> select LTRIM('??barbar');??
-> 'barbar'?
?
RTRIM(str)???
返回刪除了右空格的字符串str??
mysql> select RTRIM('barbar???');??
-> 'barbar'?
?
TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str)???
返回前綴或后綴remstr被刪除了的字符串str(位置參數默認
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'?
?
SOUNDEX(str)???
返回str的一個同音字符串(聽起來“大致相同”字符串有相同的
同音字符串,非數字字母字符被忽略,在A-Z外的字母被當作元音)??
mysql> select SOUNDEX('Hello');??
-> 'H400'?
mysql> select SOUNDEX('Quadratically');??
-> 'Q36324'?
???
SPACE(N)???
返回由N個空格字符組成的一個字符串??
mysql> select SPACE(6);??
-> '??????'?
???
REPLACE(str,from_str,to_str)???
用字符串to_str替換字符串str中的子串from_str并返回??
mysql> select REPLACE('www.mysql.com', 'w', 'Ww');??
-> 'WwWwWw.mysql.com'?
?
REPEAT(str,count)???
返回由count個字符串str連成的一個字符串(任何參數為NULL時
返回NULL,count<=0時返回一個空字符串)??
mysql> select REPEAT('MySQL', 3);??
-> 'MySQLMySQLMySQL'?
???
REVERSE(str)???
顛倒字符串str的字符順序并返回??
mysql> select REVERSE('abc');??
-> 'cba'?
?
INSERT(str,pos,len,newstr)???
把字符串str由位置pos起len個字符長的子串替換為字符串
newstr并返回??
mysql> select INSERT('Quadratic', 3, 4, 'What');??
-> 'QuWhattic'?
?
ELT(N,str1,str2,str3,...)???
返回第N個字符串(N小于1或大于參數個數返回NULL)??
mysql> select ELT(1, 'ej', 'Heja', 'hej', 'foo');??
-> 'ej'?
mysql> select ELT(4, 'ej', 'Heja', 'hej', 'foo');??
-> 'foo'?
?
FIELD(str,str1,str2,str3,...)???
返回str等于其后的第N個字符串的序號(如果str沒找到返回0)??
mysql> select FIELD('ej', 'Hej', 'ej', 'Heja', 'hej',
'foo');??
-> 2??
mysql> select FIELD('fo', 'Hej', 'ej', 'Heja', 'hej',
'foo');??
-> 0??
?
FIND_IN_SET(str,strlist)???
返回str在字符串集strlist中的序號(任何參數是NULL則返回
NULL,如果str沒找到返回0,參數1包含","時工作異常)??
mysql> SELECT FIND_IN_SET('b','a,b,c,d');??
-> 2??
???
MAKE_SET(bits,str1,str2,...)??
把參數1的數字轉為二進制,假如某個位置的二進制位等于1,對應
位置的字串選入字串集并返回(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(bits,on,off,[separator,[number_of_bits]])???
按bits排列字符串集,只有當位等于1時插入字串on,否則插入
off(separator默認值",",number_of_bits參數使用時長度不足補0
而過長截斷)???
mysql> select EXPORT_SET(5,'Y','N',',',4)??
-> Y,N,Y,N???
?
LCASE(str)??
LOWER(str)???
返回小寫的字符串str??
mysql> select LCASE('QUADRATICALLY');??
-> 'quadratically'?
???
UCASE(str)???
UPPER(str)???
返回大寫的字符串str??
mysql> select UCASE('quadratically');??
-> 'QUADRATICALLY'?
?
LOAD_FILE(file_name)???
讀入文件并且作為一個字符串返回文件內容(文件無法找到,路徑
不完整,沒有權限,長度大于max_allowed_packet會返回NULL)??
mysql> UPDATE table_name SET blob_column=LOAD_FILE
("/tmp/picture") WHERE id=1;??
?
數學函數
ABS(N)??
返回N的絕對值??
mysql> select ABS(2);????
-> 2????
mysql> select ABS(-32);????
-> 32????
???
SIGN(N)??
返回參數的符號(為-1、0或1)??
mysql> select SIGN(-32);????
-> -1????
mysql> select SIGN(0);????
-> 0????
mysql> select SIGN(234);????
-> 1????
?
MOD(N,M)????
取模運算,返回N被M除的余數(同%操作符)????
mysql> select MOD(234, 10);????
-> 4????
mysql> select 234 % 10;????
-> 4????
mysql> select MOD(29,9);????
-> 2????
?
FLOOR(N)??
返回不大于N的最大整數值??
mysql> select FLOOR(1.23);????
-> 1????
mysql> select FLOOR(-1.23);????
-> -2????
?
CEILING(N)??
返回不小于N的最小整數值??
mysql> select CEILING(1.23);????
-> 2????
mysql> select CEILING(-1.23);????
-> -1????
?
ROUND(N,D)??
返回N的四舍五入值,保留D位小數(D的默認值為0)??
mysql> select ROUND(-1.23);????
-> -1????
mysql> select ROUND(-1.58);????
-> -2????
mysql> select ROUND(1.58);????
-> 2????
mysql> select ROUND(1.298, 1);????
-> 1.3????
mysql> select ROUND(1.298, 0);????
-> 1????
?
EXP(N)??
返回值e的N次方(自然對數的底)??
mysql> select EXP(2);????
-> 7.389056????
mysql> select EXP(-2);????
-> 0.135335????
?
LOG(N)??
返回N的自然對數??
mysql> select LOG(2);????
-> 0.693147????
mysql> select LOG(-2);????
-> NULL????
?
LOG10(N)??
返回N以10為底的對數??
mysql> select LOG10(2);????
-> 0.301030????
mysql> select LOG10(100);????
-> 2.000000????
mysql> select LOG10(-100);????
-> NULL????
?
POW(X,Y)????
POWER(X,Y)????
返回值X的Y次冪??
mysql> select POW(2,2);????
-> 4.000000????
mysql> select POW(2,-2);????
-> 0.250000??
?
SQRT(N)??
返回非負數N的平方根??
mysql> select SQRT(4);????
-> 2.000000????
mysql> select SQRT(20);????
-> 4.472136????
?
PI()????
返回圓周率???
mysql> select PI();????
-> 3.141593????
?
COS(N)??
返回N的余弦值??
mysql> select COS(PI());??
-> -1.000000????
?
SIN(N)??
返回N的正弦值???
mysql> select SIN(PI());????
-> 0.000000????
?
TAN(N)??
返回N的正切值??
mysql> select TAN(PI()+1);????
-> 1.557408????
?
ACOS(N)??
返回N反余弦(N是余弦值,在-1到1的范圍,否則返回NULL)??
mysql> select ACOS(1);????
-> 0.000000????
mysql> select ACOS(1.0001);????
-> NULL????
mysql> select ACOS(0);????
-> 1.570796????
?
ASIN(N)??
返回N反正弦值??
mysql> select ASIN(0.2);????
-> 0.201358????
mysql> select ASIN('foo');????
-> 0.000000????
?
ATAN(N)??
返回N的反正切值??
mysql> select ATAN(2);????
-> 1.107149????
mysql> select ATAN(-2);????
-> -1.107149????
ATAN2(X,Y)????
返回2個變量X和Y的反正切(類似Y/X的反正切,符號決定象限)??
mysql> select ATAN(-2,2);????
-> -0.785398????
mysql> select ATAN(PI(),0);????
-> 1.570796????
?
COT(N)??
返回X的余切??
mysql> select COT(12);????
-> -1.57267341????
mysql> select COT(0);????
-> NULL????
?
RAND()??
RAND(N)????
返回在范圍0到1.0內的隨機浮點值(可以使用數字N作為初始值)?
?
mysql> select RAND();????
-> 0.5925????
mysql> select RAND(20);????
-> 0.1811????
mysql> select RAND(20);????
-> 0.1811????
mysql> select RAND();????
-> 0.2079????
mysql> select RAND();????
-> 0.7888????
?
DEGREES(N)??
把N從弧度變換為角度并返回??
mysql> select DEGREES(PI());????
-> 180.000000????
?
RADIANS(N)??
把N從角度變換為弧度并返回???
mysql> select RADIANS(90);????
-> 1.570796????
?
TRUNCATE(N,D)????
保留數字N的D位小數并返回??
mysql> select TRUNCATE(1.223,1);????
-> 1.2????
mysql> select TRUNCATE(1.999,1);????
-> 1.9????
mysql> select TRUNCATE(1.999,0);????
-> 1????
?
LEAST(X,Y,...)????
返回最小值(如果返回值被用在整數(實數或大小敏感字串)上下
文或所有參數都是整數(實數或大小敏感字串)則他們作為整數(實
數或大小敏感字串)比較,否則按忽略大小寫的字符串被比較)??
mysql> select LEAST(2,0);????
-> 0????
mysql> select LEAST(34.0,3.0,5.0,767.0);????
-> 3.0????
mysql> select LEAST("B","A","C");????
-> "A"????
?
GREATEST(X,Y,...)????
返回最大值(其余同LEAST())??
mysql> select GREATEST(2,0);????
-> 2????
mysql> select GREATEST(34.0,3.0,5.0,767.0);????
-> 767.0????
mysql> select GREATEST("B","A","C");????
-> "C"?????
?
時期時間函數?
DAYOFWEEK(date)????
返回日期date是星期幾(1=星期天,2=星期一,……7=星期六,ODBC
標準)??
mysql> select DAYOFWEEK('1998-02-03');????
-> 3????
?
WEEKDAY(date)????
返回日期date是星期幾(0=星期一,1=星期二,……6= 星期天)。?
??
mysql> select WEEKDAY('1997-10-04 22:23:00');????
-> 5????
mysql> select WEEKDAY('1997-11-05');????
-> 2????
?
DAYOFMONTH(date)????
返回date是一月中的第幾日(在1到31范圍內)????
mysql> select DAYOFMONTH('1998-02-03');????
-> 3????
?
DAYOFYEAR(date)????
返回date是一年中的第幾日(在1到366范圍內)????
mysql> select DAYOFYEAR('1998-02-03');????
-> 34????
?
MONTH(date)????
返回date中的月份數值????
mysql> select MONTH('1998-02-03');????
-> 2????
?
DAYNAME(date)????
返回date是星期幾(按英文名返回)??
mysql> select DAYNAME("1998-02-05");????
-> 'Thursday'????
?
MONTHNAME(date)????
返回date是幾月(按英文名返回)??
mysql> select MONTHNAME("1998-02-05");????
-> 'February'????
?
QUARTER(date)????
返回date是一年的第幾個季度????
mysql> select QUARTER('98-04-01');????
-> 2????
?
WEEK(date,first)???
返回date是一年的第幾周(first默認值0,first取值1表示周一是
周的開始,0從周日開始)??
mysql> select WEEK('1998-02-20');????
-> 7????
mysql> select WEEK('1998-02-20',0);????
-> 7????
mysql> select WEEK('1998-02-20',1);????
-> 8????
?
YEAR(date)????
返回date的年份(范圍在1000到9999)????
mysql> select YEAR('98-02-03');????
-> 1998????
?
HOUR(time)????
返回time的小時數(范圍是0到23)???
mysql> select HOUR('10:05:03');????
-> 10????
?
MINUTE(time)????
返回time的分鐘數(范圍是0到59)????
mysql> select MINUTE('98-02-03 10:05:03');????
-> 5????
?
SECOND(time)????
返回time的秒數(范圍是0到59)???
mysql> select SECOND('10:05:03');????
-> 3????
?
PERIOD_ADD(P,N)????
增加N個月到時期P并返回(P的格式YYMM或YYYYMM)????
mysql> select PERIOD_ADD(9801,2);????
-> 199803????
?
PERIOD_DIFF(P1,P2)????
返回在時期P1和P2之間月數(P1和P2的格式YYMM或YYYYMM)??
mysql> select PERIOD_DIFF(9802,199703);????
-> 11????
?
DATE_ADD(date,INTERVAL expr type)??
DATE_SUB(date,INTERVAL expr type)????
ADDDATE(date,INTERVAL expr type)????
SUBDATE(date,INTERVAL expr type)??
對日期時間進行加減法運算??
(ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同義詞,也
可以用運算符+和-而不是函數??
date是一個DATETIME或DATE值,expr對date進行加減法的一個表
達式字符串type指明表達式expr應該如何被解釋??
[type值 含義 期望的expr格式]:??
SECOND 秒 SECONDS????
MINUTE 分鐘 MINUTES????
HOUR 時間 HOURS????
DAY 天 DAYS????
MONTH 月 MONTHS????
YEAR 年 YEARS????
MINUTE_SECOND 分鐘和秒 "MINUTES:SECONDS"????
HOUR_MINUTE 小時和分鐘 "HOURS:MINUTES"????
DAY_HOUR 天和小時 "DAYS HOURS"????
YEAR_MONTH 年和月 "YEARS-MONTHS"????
HOUR_SECOND 小時, 分鐘, "HOURS:MINUTES:SECONDS"????
DAY_MINUTE 天, 小時, 分鐘 "DAYS HOURS:MINUTES"????
DAY_SECOND 天, 小時, 分鐘, 秒 "DAYS
HOURS:MINUTES:SECONDS"?
expr中允許任何標點做分隔符,如果所有是DATE值時結果是一個
DATE值,否則結果是一個DATETIME值)??
如果type關鍵詞不完整,則MySQL從右端取值,DAY_SECOND因為缺
少小時分鐘等于MINUTE_SECOND)??
如果增加MONTH、YEAR_MONTH或YEAR,天數大于結果月份的最大天
數則使用最大天數)????
mysql> SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND;??
?
-> 1998-01-01 00:00:00????
mysql> SELECT INTERVAL 1 DAY + "1997-12-31";????
-> 1998-01-01????
mysql> SELECT "1998-01-01" - INTERVAL 1 SECOND;????
-> 1997-12-31 23:59:59????
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL 1
SECOND);????
-> 1998-01-01 00:00:00????
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL 1
DAY);????
-> 1998-01-01 23:59:59????
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL
"1:1" MINUTE_SECOND);????
-> 1998-01-01 00:01:00????
mysql> SELECT DATE_SUB("1998-01-01 00:00:00",INTERVAL "1
1:1:1" DAY_SECOND);????
-> 1997-12-30 22:58:59????
mysql> SELECT DATE_ADD("1998-01-01 00:00:00", INTERVAL "-1
10" DAY_HOUR);??
-> 1997-12-30 14:00:00????
mysql> SELECT DATE_SUB("1998-01-02", INTERVAL 31 DAY);????
-> 1997-12-02????
mysql> SELECT EXTRACT(YEAR FROM "1999-07-02");????
-> 1999????
mysql> SELECT EXTRACT(YEAR_MONTH FROM "1999-07-02
01:02:03");????
-> 199907????
mysql> SELECT EXTRACT(DAY_MINUTE FROM "1999-07-02
01:02:03");????
-> 20102????
?
TO_DAYS(date)????
返回日期date是西元0年至今多少天(不計算1582年以前)??
mysql> select TO_DAYS(950501);????
-> 728779????
mysql> select TO_DAYS('1997-10-07');????
-> 729669????
?
FROM_DAYS(N)????
給出西元0年至今多少天返回DATE值(不計算1582年以前)???
mysql> select FROM_DAYS(729669);????
-> '1997-10-07'????
?
DATE_FORMAT(date,format)????
根據format字符串格式化date值??
(在format字符串中可用標志符:??
%M 月名字(January……December)????
%W 星期名字(Sunday……Saturday)????
%D 有英語前綴的月份的日期(1st, 2nd, 3rd, 等等。)????
%Y 年, 數字, 4 位????
%y 年, 數字, 2 位????
%a 縮寫的星期名字(Sun……Sat)????
%d 月份中的天數, 數字(00……31)????
%e 月份中的天數, 數字(0……31)????
%m 月, 數字(01……12)????
%c 月, 數字(1……12)????
%b 縮寫的月份名字(Jan……Dec)????
%j 一年中的天數(001……366)????
%H 小時(00……23)????
%k 小時(0……23)????
%h 小時(01……12)????
%I 小時(01……12)????
%l 小時(1……12)????
%i 分鐘, 數字(00……59)????
%r 時間,12 小時(hh:mm:ss [AP]M)????
%T 時間,24 小時(hh:mm:ss)????
%S 秒(00……59)????
%s 秒(00……59)????
%p AM或PM????
%w 一個星期中的天數(0=Sunday ……6=Saturday )????
%U 星期(0……52), 這里星期天是星期的第一天????
%u 星期(0……52), 這里星期一是星期的第一天????
%% 字符% )??
mysql> select DATE_FORMAT('1997-10-04 22:23:00','%W %M %
Y');????
-> 'Saturday October 1997'????
mysql> select DATE_FORMAT('1997-10-04 22:23:00','%H:%i:%
s');????
-> '22:23:00'????
mysql> select DATE_FORMAT('1997-10-04 22:23:00','%D %y %a
%d %m %b %j');????
-> '4th 97 Sat 04 10 Oct 277'????
mysql> select DATE_FORMAT('1997-10-04 22:23:00','%H %k %I
%r %T %S %w');????
-> '22 22 10 10:23:00 PM 22:23:00 00 6'????
?
TIME_FORMAT(time,format)??
和DATE_FORMAT()類似,但TIME_FORMAT只處理小時、分鐘和秒(其
余符號產生一個NULL值或0)??
?
CURDATE()?????
CURRENT_DATE()??
以'YYYY-MM-DD'或YYYYMMDD格式返回當前日期值(根據返回值所
處上下文是字符串或數字)????
mysql> select CURDATE();????
-> '1997-12-15'????
mysql> select CURDATE() + 0;????
-> 19971215????
?
CURTIME()????
CURRENT_TIME()??
以'HH:MM:SS'或HHMMSS格式返回當前時間值(根據返回值所處上
下文是字符串或數字)??????
mysql> select CURTIME();????
-> '23:50:26'????
mysql> select CURTIME() + 0;????
-> 235026????
?
NOW()????
SYSDATE()????
CURRENT_TIMESTAMP()??
以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回當前日期
時間(根據返回值所處上下文是字符串或數字)?????
mysql> select NOW();????
-> '1997-12-15 23:50:26'????
mysql> select NOW() + 0;????
-> 19971215235026????
?
UNIX_TIMESTAMP()????
UNIX_TIMESTAMP(date)????
返回一個Unix時間戳(從'1970-01-01 00:00:00'GMT開始的秒
數,date默認值為當前時間)??
mysql> select UNIX_TIMESTAMP();????
-> 882226357????
mysql> select UNIX_TIMESTAMP('1997-10-04 22:23:00');????
-> 875996580????
?
FROM_UNIXTIME(unix_timestamp)????
以'YYYY-MM-DD HH:MM:SS'或YYYYMMDDHHMMSS格式返回時間戳的
值(根據返回值所處上下文是字符串或數字)?????
mysql> select FROM_UNIXTIME(875996580);????
-> '1997-10-04 22:23:00'????
mysql> select FROM_UNIXTIME(875996580) + 0;????
-> 19971004222300????
?
FROM_UNIXTIME(unix_timestamp,format)????
以format字符串格式返回時間戳的值??
mysql> select FROM_UNIXTIME(UNIX_TIMESTAMP(),'%Y %D %M %
h:%i:%s %x');????
-> '1997 23rd December 03:43:30 x'????
?
SEC_TO_TIME(seconds)????
以'HH:MM:SS'或HHMMSS格式返回秒數轉成的TIME值(根據返回值
所處上下文是字符串或數字)?????
mysql> select SEC_TO_TIME(2378);????
-> '00:39:38'????
mysql> select SEC_TO_TIME(2378) + 0;????
-> 3938????
?
TIME_TO_SEC(time)????
返回time值有多少秒????
mysql> select TIME_TO_SEC('22:23:00');????
-> 80580????
mysql> select TIME_TO_SEC('00:39:38');????
-> 2378?
?
轉換函數
cast
用法:cast(字段 as 數據類型) [當然是否可以成功轉換,還要看數據類型強制轉化時注意的問題]
實例:select cast(a as unsigned) as b from cardserver where order by b desc;
convert:
用法:convert(字段,數據類型)
實例:select convert(a ,unsigned) as b from cardserver where order by b desc;
轉載于:https://www.cnblogs.com/magicsky0/p/3571245.html
總結
以上是生活随笔為你收集整理的MySQL函数大全 及用法示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于Arduino开发的简易“高水位报警
- 下一篇: SDNU 1280.就问你慌不慌(高精度