mysql系統函式
數學函式
abs(x) 返回x的絕對值
ceil(x) 返回大於或者等於x的最小整數
floor(x) 返回小於或者等於x的最大函式
rand(x) 返回0-1之間的隨機數
sign(x) 返回x的符號 x是負數 0 正數分別返回-1 0
字串函式
char_length(x) 返回字串s的長度
length(s) 返回字串s的長度
concat(s1,s2,s3) 將多個字串合併成為乙個字串
concat_ws(s,s2,s3) 也是將多個字串合併成為乙個字串 但是在每個字串之間加上乙個s
upper(s),ucase(s) 將字串s的所有字母都變成大寫
lower(s),lcase(s) 將字串s的多有字母都變成小寫
left(s,n) 返回字串s的前n個字元
right(s,n) 返回字串s的後n個字元
lpad(s1,len,s2) 字串s2來填充s1的開始之處,是字串的長度達到len
rpad(s1,len,s2) 字串s2來天從s1的結束之處,使字串長度達到len
trim(s) 去掉字串s開始處和結尾處的空格
trim(s1 from s) 去掉字串s中開始位置和結束位置的字串s1
repeat(s,s1,s2) 用字串s2代替字串s中的字串s1
repeat('abc',4) 返回由count個字串str連成的乙個字串(任何引數為null時)
strcmp(s1,s2) 比較字串s1,s2
substring(s,n,len) 獲取從字串s中的第n個位置開始長度為len的字串
日期和時間函式
curdate(),current_date() 返回當前日期
curtime(),current_time() 返回當前時間
now(),current_timestamp 返回當前日期和時間
localtime(),sysdate();
unix_timestamp(); 返回當前時間的時間戳
unix_timestamp(d); 把unix時間戳的時間轉換成普通格式的時間
month(d) 返回日期d中的月份值 範圍是1-12
monthname(d) 返回日期d的月份名稱 如january
dayname() 返回日期d是星期幾 如monday
dayofweek(d) 返回日期d是星期幾 1 表示星期日 2 表示星期2
weekday(d) 返回日期(d)是星期幾,0是星期一 1是星期二
weekofyear(d) 返回日期d是本年的第幾個星期,範圍是0-53
dayofyear(d) 返回日期d是本月的第幾天
year(d) 返回日期d的中的年份值
hour(d) 返回時間d的小時值
extract(type from d) 從日期中獲取指定的值 type返回的是值 如year hour
time_to_sec(t) 將時間轉化成秒
date_format(d,f) 按照表示式的要求顯示日期d
time_format(t,f) 按照表示式的要求顯示時間t
get_format(type,s) 按照字串s獲取type型別資料的顯示格式
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), 這裡星期一是星期的第一天
%% 字元% )
條件判斷函式
if(expr,v1,v2)函式 如果表示是expr成立 返回結果v1 否則返回結果v2
case when expr1 then v1 when expr2 then v2 end
set @a=2
case when @a=2 then 'ok' when @a=3 then 'on' end;
mysql欄位型別
tinyint 有符號的範圍是-128到127 無符號的範圍是0-255
smallint 有符號的是-32768到32767 無符號的範圍是0-65535
mediumint
int 乙個正常大小的整數 10 一般是10位數
float 浮點數 不能無符號
double
decimal 有兩個引數 第乙個引數是浮點數的長度 第二個引數是表示這個浮點數保留幾位小數
date 儲存的是乙個日期 支援的範圍是1000-01-01'到'9999-12-31
datetime 乙個日期和時間的組合 至此的範圍是1000-01-01 00:00:00'到'9999-12-31 23:59:59
timestamp 乙個時間戳
time 乙個時間 範圍是'-838:59:59'到'838:59:59'。
char 乙個定長的字串 範圍是1-255
varchar 乙個變長的字串
mysql 常用字段型別 mysql 常用字段型別
tinyint m unsigned zerofill 1位元組 極小整數,資料型別用於儲存一些範圍的整數數值範圍 有符號 128 127.無符號 255 特別的 mysql中無布林值,使用tinyint 1 構造。smallint 2位元組 小整數有符號 32768 無符號 65535 mediu...
mysql查詢語句常用字段操作函式
一 concat 函式 1 功能 將多個字串連線成乙個字串。2 語法 concat str1,str2,返回結果為連線引數產生的字串,如果有任何乙個引數為null,則返回值為null。3 舉例 例1 select concat id,name,score as info from tt2 同時該函式...
MySql常用字元函式
concat 字元連線 例 select concat my sql concat ws 使用指定的分隔符進行字串連線 例 select concat ws my sql format 數字格式化 例 select format 123456.78,2 lower upper 轉化成大小寫字母 例 ...