10 MySQL_字串函式和數學函式
阿新 • • 發佈:2022-05-10
字串函式
1. 字串拼接 concat('aa','bb') ->aabb;
-
查詢emp表中 員工姓名 和工資 工資後面顯示單位元
select name,concat(sal,'元') from emp;
2. 獲取字串的長度 char_length('abc') 3
-
案例: 查詢員工姓名和姓名的長度
select name,char_length(name) from emp;
3. 獲取字串在另一個字串上出現的位置
-
格式1: instr(str,substr);
select instr('abcdef','c');
-
格式2 : locate(substr,str);
select locate ('c','abcdef');
4. 插入字串
- 格式: insert ( str , start , length , newstr);
select insert ('abcdefg',3,2,'c');
5. 轉大小寫
-
格式: upper() lower()
`select upper('nba'),lower('NBa');`
6. 去兩端空白
`select trim(' a b ');`
7. 擷取字串
-
left(str,num);
select left('abcdefg',3);
-
right(str,num);
select right('abcdefg',3);
-
substring(str, start,end);
select substring('abcdefg',2); select substring('abcdefg',2,3);
8. 重複: repeat(str,重複次數)
select repeat('abc',2);
9.替換 : replace(str,替換前的值,替換後的值);
select replace('abcdef','c','x');
10. 翻轉 reverse
select reverse('abc');
數學相關函式
1. 向下取整 floor(num)
select floor(3.84); 3
2. 四捨五入round(23.8); 24
- round(num,m);---m保留m位小數
select round(23.879,1);23.9
3.非四捨五入
select truncate(23.879,2); 23.87
- 隨機數 rand() 0-1隨機的小數
- 獲取3,4,5的隨機數
- floor(rand()*3)+3;