MySQL 常見函式(單行函式)

2021-10-10 08:32:12 字數 4637 閱讀 3467

二,數學函式

三,日期函式

四,其他函式

五,流程控制函式

select 函式名(實參列表)

from 表;

1,單行函式

如concat,length,ifnull等

2,分組函式(又稱為統計函式,聚合函式,組函式)

功能:做統計使用

一,字元函式

1,length()函式

//int length(string str)

//獲取引數值的位元組個數

select length(

'john'

);

2,concat()函式
//string concat(string str1,string str2,...)

//拼接字串

select concat(last_name,

'_',first_name)

as 姓名 from employees;

3,upper(),lower()函式
//string upper(string str)

//將小寫字母變為大寫

// string lower(string str)

//將大寫字母變為小寫

select concat(upper(last_name)

,lower(first_name)

)as 姓名 from employees;

4,substr(),substring()函式
//string substr(string str, int index)

//返回str在索引index處後面的字串(包括index本身)

//如果index為負數,則從str尾部開始索引。

select substr(

'mysql',3

)as out_put;

//string substr(string str,int index, int length)

//返回str索引index後length個字元,length不可為負數,當index為負數時從尾部開始索引

select substr(

'mysql',4

,5)as out_put;

5,instr()函式
//int unstr(string str, string substr)

//返回substr在str中首次出現的位置的索引

select instr(

'mysql'

,'my'

)as out_put;

6,trim()函式
//string trim(string str)

//返回去掉str前後空格後的字串

select trim(

' mysql '

)as out_put;

//string trim(string s from string str)

//返回乙個字串,為去掉str前後s字串後的結果。

select trim(

'ab'

from

'ababmysqlab'

)as out_put;

7,lpad(),rpad()函式
//左填充

//string lpad(string str, int length, string ex)

//當length大於str的長度時,用ex填充,當小於時,截斷字串str

//右填充

//string rpad(string str, int length, string ex)

select lpad(

'mysql',10

,'*'

)as out_put;

select rpad(

'mysql',10

,'@'

)as out_put;

8,replace()函式
//string replace(string str, string from_str, string to_str)

//用to_str替代str中from_str的部分

select

replace

('mysql'

,'my'

,'your'

)as out_put;

二,數學函式

1,round()函式

//int round(double x)

//返回x四捨五入後的值

//double round(double x, int length)

//返回x小數點後length位四色五入後的值

2,ceil()函式
//int ceil(double x)

//向上取整,返回》= x的最小整數。

select ceil(

1.43

);

3,floor()函式
//int floor(double x)

//向下取整 ,返回<= x的最大整數

select floor(

5.32

);

4,truncate()截斷
//double truncate(double x, int length)

//截斷x小數點後length位後面

select

truncate

(1.533333,2

);

5,mod()函式
//int mod(int x, int y)

//取餘 x%y

select

mod(10,

-3);

三,日期函式

1,now()函式

//string now()

//返回當前日期***x-xx-xx xx:xx:xx字串

select

now(

);

2,curdate()函式
//string curdate()

//返回當前年月日字串

select curdate(

);

3,curtime()函式
//string curtime()

//返回當前時間,不包含日期

select curtime(

);

4,year,month,day…函式
//string year(string date)

//傳入乙個日期字串,返回年

select

year

(now()

);//month同上,day同上......

5,str_to_date()函式
//string str_to_date('***x-x-x','%y-%c-%d')

//傳入乙個日期,返回乙個指定格式的日期字串。

select str_to_date(

'1998-3-2'

,'%y-%c-%d'

)as out_put;

四,其他函式

1,version()函式

//version()

//檢視當前版本號

select version(

);

2,database()函式
//database()

//檢視當前資料庫

select

database()

;

3,user()函式
//user()

//檢視當前使用者

select

user()

;

五,流程控制函式

1,if()函式

//string if(expr1, expr2, expr3)

//如果expr1表示式為真,返回expr2,否則,返回expr3。

select last_name,commission_pct,

if(commison_pct is

null

,'沒獎金'

,'有獎金'

)as 獎金 from employees;

2,case()函式
//case 要判斷的字段或表示式

//when 常量1 then 輸出

//when 2 then 輸出

//....

//else 輸出

//end

use myemployees;

select salary as 原始工資,department_id,

case department_id

when

30then salary*

1.1when

40then salary*

1.2when

50then salary*

1.3else salary

endas 新工資

from employees;

04 MySQL常見函式 單行函式

單行函式細分 1 字元函式 2 數學函式 3 日期函式 4 其他函式 5 流程控制函式 單行函式 字元函式 一 字元函式 1.length 獲取引數的位元組長度 select length john select length 張三丰 utf 8編碼,1個漢字3個位元組 檢視當前客戶端的字符集 sh...

Mysql筆記之(四)常見函式之單行函式

2.數學函式 3.日期函式 4.其他函式 5.流程控制函式 注 date format函式引數說明 呼叫 select 函式名 實參列表 from 表 特點 1 函式名 2 函式功能 分類 單行函式 如concat length ifnull等,傳乙個引數進去會有乙個返回值 分組函式 又名統計函式 ...

mysql 行函式 MySQL 單行函式

lower hellowrold upper helloworld 字元控制函式 select replace abcdababab p m 將 abcdababab 中的字元p替換成m select trim from hhhhhello.hhhworldhhhhh 去掉兩邊的空格。select ...