MySQL MySQL 03 常見函式

2021-10-01 15:18:58 字數 3463 閱讀 6431

格式:

select fun(

)[實參列表]

[from table_name]

;# 當函式用到表中的字段時,帶表

特點:

分類:分組函式:作統計使用

獲取字串長度

select length(

"hello"

);

字串拼接函式

select concat(first_name,

'_',last_name)

as name from employees;

變大寫、變小寫

select upper(

"hello");

select lower(

"hello"

);

獲取指定下標後面所有的字元

獲取指定下標下指定長度的字元

sql中,index從1開始

select substr(

"幹啥啥不行,吃飯第一名",7

);select substr(

"幹啥啥不行,吃飯第一名",1

,5);

返回子串第一次出現的下標,沒有就返回0

select instr(

"hello world"

,"world"

);

去除首尾指定字元,如果沒有指定,就是去除空格

select trim(

" hello world ");

select trim(

'aa'

from

"aaaaahello worldaaaaaaaaaa"

);

左填充,填充指定的字元

右填充,填充指定的字元

select lpad(

"ok",10

,'*'

);

字元替換,替換所有

select

replace

("hello hello world"

,"hello"

,"bye"

);

四捨五入,預設取整數

select

round

(9.99);

select

round

(9.99,1

);

向上取整

select ceil(

1.02);

select ceil(

-1.02

);

向下取證

select floor(

1.22);

select floor(

-1.02

);

截斷,保留1位小數

select

truncate

(1.6888,1

);

取餘

mod(a,b) : a-a/b * b

select

mod(10,

-3);

# 1select-10

%3;# -1

select10%

3;# 1

獲取當前日期+時間

select

now(

);

當前日期

select curdate(

);

當前時間

select curtime(

);

獲取年

select

year

(now()

);select

year

('1999-10-18');

select

year

(hiredate)

from employees;

獲取月

獲取月名(英文)

轉換成指定的格式

str_to_date(

"9-14-1999"

,"%m-%d-%y"

)# 用後面的格式解析前面的串到日期型別變數中

日期格式化成字串

date_format(

'2019/6/6'

,'%y年%m月%d日'

)

y 1999

y 99

m 01

c 1d 30

h 24

h 12

i min

s 59

selectif(

a, b,

c)等效於

if(a)

belse

c

case 標記 

when 值1

then value1/語句1

;# 在select中這個分號不要帶

when 值2

then value2/語句2

;when 值3

then value3/語句3;.

..else valuen/語句n;

end# 查詢員工的工資 根據部門號遞增工資的顯示

select salary 原始工資, department_id,

case department_id

when

30then

salary*

1.1when

40then

salary*

1.2when

50then

salary*

1.3else

salary

endas 新工資

from employees;

case

when 條件 then value1/語句1

# 無分號

when 條件 then value2/語句2

when 條件 then value3/語句3..

.else valuen/語句n;

end

# 用法

select

sum(salary)

,max

(salary)

from employees;

和分組函式一同查詢的字段有限制:一同查詢的字段必須是group by後的字段

都有哪些約束在mysql mysql常見約束有哪些

約束是一種限制,它通過對錶的行或列的資料做出限制,來確保表的資料的完整性 唯一性。下面本篇文章就來給大家介紹一下6種mysql常見的約束,希望對大家有所幫助。1 非空約束 not null 非空約束用於確保當前列的值不為空值,非空約束只能出現在表物件的列上。null型別特徵 所有的型別的值都可以是n...

MySql MySql的常見錯誤提示(持續更新)

illegal mix of collations utf8 general ci,implicit and utf8 unicode ci,implicit for operation 字符集不一致造成的,檢視修改標的字符集,改成一致即可。error 1153 08s01 got a packet...

Python day4 常見的Python函式

函式 描述舉例 abs x 返回x的絕對值 abs 2.3 2.3 max x1,x2,返回x1,x2,的最大值 max 2,3,5 5 min x1,x2,返回x1,x2,的最小值 min 1,1,2 1 pow a,b 返回a的b次方值 a b pow 2,2 4 round x 返回與x最接近...