分為單行函式和分組函式。
單行函式:字元函式、數學函式、日期函式、其他函式
一、字元函式:
length()
concat()連線字串
upper()、lower()
substr()、substring():
#擷取從指定索引處後面的所有字元
select substr(『小明愛上了小紅』,5)
結果為:了小紅//注意:索引從1開始不是從0開始
#擷取從指定索引處指定字元長度的字元
select substr(『小明愛上了小紅』,1,3)
結果為:小明愛//注意:索引從1開始不是從0開始
instr():
#返回子串第一次出現的索引,如果找不到返回0
trim()//去除字串左右兩邊的字元,預設為空格
lpad()//左填充
rpad()
replace()#替換
select replace(『小明去上課』,『小明』,『小紅』);
結果:小紅去上課
二、數學函式:
round()#四捨五入,第二個引數為保留多少位小數
select round(1.656,2)#1.66
truncate()#截斷,第二個引數為保留幾位小數後截斷
select truncate(1.6999,1)#結果為1.6
mod()#取餘
三、日期函式:
#返回當前系統日期+時間
select now();
#返回當前系統日期,不包含時間
select curdate();
#返回當前時間,不包含日期
select curtime();
str_to_date()將字元通過指定的格式轉換成日期
1.%y 四位的年份
2.%y 2位的年份
3.%m 月份(01,02,…11,12)
4.%c 月份(1,2,…11,12)
5.%d 日(01,02…)
6.%h 小時(24小時制)
7. %i 分鐘(00,01…59)
8. %s 秒(00,01,…59)
select str_to_date(『1998-3-2』,『%y-%c-%d』)
data_format()#將日期轉換成字元
selecrt data_format(now(),『%y年%m月%d日』)
四、流程控制函式
if()#if else的效果
select name,score,if(score=60,『及格』,『不及格』);
①case 要判斷的字段或表示式
when 常量1 then 要顯示的值1或語句1;
when 常量2 then 要顯示的值2或語句2;
else 要顯示的值n或語句n;
endselect salary,department_id,
case department_id
when 5 then salary2
when 6 then salary3
else salary end as 新工資
from employees;
②case
when 條件1 then 要顯示的值1或語句1;
when 條件2 then 要顯示的值2或語句2;
else 要顯示的值n或語句n;
endselect salary
case
when salary>2000 then 『a』
when salary>1500 then 『b』
when salary>1000 then 『c』
else 『d』 end as 工資級別
from employees;
MySQL常見函式
注釋 字元函式 函式解釋 lower str 字母轉小寫 upper str 字母轉大寫 concat str,str,將多個字串拼接 substr str from pos for len 字母轉小寫 length str 獲取字串長度 instr str,substr 返回substr第一次出現...
MySQL 常見函式(單行函式)
二,數學函式 三,日期函式 四,其他函式 五,流程控制函式 select 函式名 實參列表 from 表 1,單行函式 如concat,length,ifnull等 2,分組函式 又稱為統計函式,聚合函式,組函式 功能 做統計使用一,字元函式 1,length 函式 int length strin...
MySQL常見的函式
大小寫控制函式 lower str 將字串全轉為小寫字串 upper str 將字串全轉為大寫字串 字元處理函式 concat str1,str2,將str1,str2,等字串連線起來 substr str,pos,len 從str的第pos位 範圍 1 str.length 開始,擷取長度為len...