a.字元函式
(1)concat(
) 拼接字串
例如:select concat(
'地點:'
,城市或地區,
' 人口:'
,人口(萬人),
'萬人'
) from sheet1;(2
)length(
)計算字串的長度
例如:select * from sheet1 where length(人口(萬人))=6
;(3)lower(
) upper(
)轉換大小寫
(4)replace(
)在指定的字串中,將某子串替換為新的字串
replace(目標字串,查詢的子串,新字串)
例如:select replace(
'北京最好'
,'北京'
,'北平');
結果:北平最好
(5)substring(
)擷取子串
substring(目標字串,開始位置,長度)
注意:開始索引是從1開始,不是0
例如:select substring(城市或地區,1,
3) from sheet1;
結果: 上海市
北京市成都市
.....
.
b.數值函式
(1)abs(
) 作用:取絕對值
例如:select abs(1
),abs(-1
)(2)pi(
) 作用:獲取圓周率
例如:select pi()(
3)mod(
) 作用:取模
例如:select mod(3,
2)(4
)pow()
作用:求乙個數的n次方
例如:select pow(3
,2)(
5)ceil(
) floor(
) ceil(
):向上取整
floor(
):向下取整
例如:select ceil(
5.43
),floor(
5.7)(6
)round()
round
(num)
:返回四捨五入的整數
round
(num,n):返回四捨五入n位小數
例如:select round
(5.4),
round
(6.8),
round
(5.34,1
),round
(6.789,2
)(7)truncate(
) truncate(num,n) 其中n的取值可以是0,1
,2..如果n取值為0代表擷取整數
例如:select truncate(
5.3,0)
,truncate(
5.67,1
),truncate(
5.789,2
)(8)rand(
) 作用:獲取浮點型別的隨機數,範圍0
-1.0 其中包括0但不包括1
例如:select rand(
),rand(
),rand(
)
c.日期時間函式
(1)now(
)獲取當前日期和時間 包括年月日 時分秒
例如 select now()(
2)curdate(
)獲取當前日期 只包括年月日
例如:select curdate()(
3)curtime(
)獲取當前時間 只包括時分秒
例如:select curtime();
(4)sysdate(
)獲取函式執行時的日期和時間
now(
)獲取sql執行時的日期和時間
例如:select sysdate(
),now(
) select sysdate(
),now(
),sleep(2)
,sysdate(
),now()(
5)dayofyear(
)獲取某個日期是所在年份的第幾天
week(
)獲取某個日期是所在年份的第幾周
例如:select dayofyear(now())
,week(now())
(6)datediff(
)計算兩個日期之間的時間間隔
例如:計算2019-1
-1距離現在時間間隔
select datediff(
'2019-1-1'
,now())
(7)date_add(
) date_sub(
) 實現日期的加減運算
date_add(日期,時間間隔型別關鍵字interval 時間間隔型別對應的表示式 時間間隔型別)
例如 day_hour 1_12 代表 1天12小時
year_month 2_1 代表 2年1個月
select date_add(now(
),interval '2_1' year_month)
select date_sub(now(
),interval 10 day)
(1)
if(條件,t,f) 如果條件成立返回t,否則返回f
例如:select if(1
>2,
'1大於2'
,'1小於2'
) 查詢雇員的薪資,如果薪資》=
3000 輸入'高薪' 否則'低薪'
select sal from emp;
select sal,
if(sal>=
3000
,'高薪'
,'低薪'
)'薪資水平'
from emp;(2
)ifnull(值1
,值2) 如果值1不為空則返回值1,否則返回值2
查詢雇員的年薪
select sal*
12from emp;
select (sal+comm)*12
from emp;
select (sal+ifnull(comm,0)
)*12from emp;(3
)nullif(值1
,值2) 如果值1等於值2返回null,否則返回值1
例如 select nullif(1,
2),nullif(1,
1)(4
) case 值
when 值1 then 結果1
when 值2 then 結果2..
.else 其他結果
end例如: select case 1
when 1 then '結果是1'
when 2 then '結果是2'
else
'其他結果'
end (5
) case
when 條件 then 結果1
when 條件 then 結果2..
...else 其他結果
end例如:查詢雇員薪資 如果薪資》=
3000返回 '高薪' 否則'低薪'
select sal,case
when sal>=
3000 then '高薪'
else
'低薪'
end '薪資水平'
from emp;
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 ...
MySQL 常見函式(單行函式)
二,數學函式 三,日期函式 四,其他函式 五,流程控制函式 select 函式名 實參列表 from 表 1,單行函式 如concat,length,ifnull等 2,分組函式 又稱為統計函式,聚合函式,組函式 功能 做統計使用一,字元函式 1,length 函式 int length strin...