MySQL複習(二)之 函式

2021-09-27 09:28:49 字數 2849 閱讀 2558

參考

函式功能

注意點cancat(s1,s2,…sn)

連線s1,s2,…sn 為乙個字串

連線的內容有個字段為空,則整個為空

concat_ws(separator, str1, str2, …)

和concat()一樣,將多個字串連線成乙個字串,但是可以一次性指定分隔符

select concat_ws(』-』,car_manage_no,car_manage_id) from t1 把分隔符指定為null,結果全部變成了null

group_concat( [distinct] 要連線的字段 [order by 排序字段 asc/desc ] [separator 『分隔符』] )

將group by產生的同乙個分組中的值連線起來,返回乙個字串結果。

select warehouse_no, warehouse_name, group_concat(concat(plate_city_name,』-』,valid_time) order by valid_time desc) from fcm_warehouse_city_valid group by warehouse_no

insert(str,x,y,instr)

將字串str 從第x 位置開始,y 個字元長的子串替換為字串instr

lower(str)

將字串str 中所有字元變為小寫

upper(str)

將字串str 中所有字元變為大寫

left(str ,x)

返回字串str 最左邊的x 個字元

如果第二個引數是null,那麼將不返回任何字串

right(str,x)

返回字串str 最右邊的x 個字元

如果第二個引數是null,那麼將不返回任何字串

lpad(str,n ,pad)

用字串pad 對str 最左邊進行填充,直到長度為n 個字元長度

rpad(str,n,pad)

用字串pad 對str 最右邊進行填充,直到長度為n 個字元長度

ltrim(str)

去掉字串str 左側的空格

rtrim(str)

去掉字串str 行尾的空格

repeat(str,x)

返回str 重複x 次的結果

replace(str,a,b)

用字串b 替換字串str 中所有出現的字串a

strcmp(s1,s2)

比較字串s1和s2

:比較字串s1 和s2 的ascii 碼值的大小。如果s1 比s2 小,那麼返回-1;如果s1 與s2相等,那麼返回0;如果s1 比s2 大,那麼返回1

trim(str)

去掉字串行尾和行頭的空格

substring(str,x,y)

返回從字串str x 位置起y 個字元長度的字串

函式功能

abs(x)

返回x 的絕對值

ceil(x)

返回大於x 的最大整數值

floor(x)

返回小於x 的最大整數值

mod(x,y)

返回x/y 的模

rand()

返回0 到1 內的隨機值

truncate(x,y)

返回數字x 截斷為y 位小數的結果

round(x,y)

返回引數x 的四捨五入的有y 位小數的值

函式功能

curdate()

返回當前日期

curtime()

返回當前時間

now()

返回當前的日期和時間

unix_timestamp(date)

返回日期date 的unix 時間戳

from_unixtime

返回unix 時間戳的日期值

week(date)

返回日期date 為一年中的第幾周

year(date)

返回日期date 的年份

hour(time)

返回time 的小時值

minute(time)

返回time 的分鐘值

monthname(date)

返回date 的月份名

date_format(date,fmt)

返回按字串fmt 格式化日期date 值

date_add(date,interval expr type)

datediff(expr,expr2)

返回起始時間expr 和結束時間expr2 之間的天數,eg:select now() current,date_add(now(),interval 31 day) after31days,date_add(now(),interval 『1_2』 year_month) after_oneyear_twomonth;

database() 返回當前資料庫名

version() 返回當前資料庫版本

user() 返回當前登入使用者名稱

md5() 返回字串str 的md5 值

show table status 檢視表資訊

show table status like 『%表名%』

show index from 表名

查詢某年每個月的銷量??

select

count(*

)'總銷量'

,month

(date_create)

from t_order where

year

(date_create)

=2019

group

bymonth

(date_create)

;

MySQL複習 SQL函式

一 數學函式 1 求絕對值abs select abs num from tablename where 2 向下取整floor 例如 99.9 99 select floor num from tablename where 3 向上取整 ceil 例如99.9 100 select ceil n...

C 之函式複習

1.函式的定義 型別說明 函式名 引數列表 乙個程式只有乙個 main 函式,main 函式可以有引數,此引數為命令列引數。函式具有返回值和返回值型別,返回用 renturn return 的作用還有乙個是結束當前的函式的執行。2.函式的呼叫 函式的呼叫形式為 型別說明符 函式名 形參表 3.函式的...

mysql複習 mysql複習

建立資料庫 create database test 建立表 use test create table user id int,name varchar 255 time date,age int 插入資料 第一種方式 insert into 表名 values 值1,2,3 例 insert i...