0618_MySQL学习笔记
加号 +
Mysql中加号只能做运算符
- select 100+90 ==> 190
- select "100"+90 ==> 190 如果有一个是字符串,那么尝试转换成数值型,转换成功
- select "jack" + 90 ==> 90 转换失败则为0
- select null + 90 ==> null 只有任一个为null结果就是null
_ 表示单个字符
select * from person where name like "__a_b%"; 表示查找名字第三个字符为a,第五个字符为b的人
select * from person where name like "_$_%" escape "$"; 表示$是转译字符
函数 (索引是从1开始)
- length : select length("jack");
- concat
- uppper/lower
- substr
- instr : instr(str1,str2) 返回str2在str1中第一次出现的索引,没有返回0
- trim:trim(’ abc ‘) === > abc
select trim("a" from "aaabaacaa") out_put; -> baac
SELECT LPAD("ABC",6,"*") out_put; -> ***ABC
SELECT RPAD("ABC",6,"*") out_put; --> ABC***
select replace("ABCBCBCD","BC","UZI") out_put; --> AUZIUZIUZID
select round(1.6); 四舍五入
select round(1.578,2) out_put; --> 1.58
select ceil(1.01) out_put; --> 2 向上取整
select floor(9.99) out_put; --> 9 向下取整
select TRUNCATE(123.456,2) out_put; --> 123.45 截断,小数点后2位
select mod(11,4) out_put; --> 3 取余
日期函数
select now();
2020-06-18 22:19:53
select curdate();
2020-06-18
select curtime();
22:21:01
select year(now());
2020
select DATEDIFF("2019-10-1","2019-9-25");
6
聚合函数
sum avg 一般处理数值型,忽略null值
max min count 可以处理任意类型 忽略null值
select sum(salary) from employees;
select avg(salary) from employees;
select max(salary) from employees;
select min(salary) from employees;
select COUNT(salary) from employees;
- count(1)、count(*)、count(column_name):
- 在MyISAM中,count(*)效率最高
- InnoDB中,coun(*)和count(1)差不大,高于count(column_name);
以上是 0618_MySQL学习笔记 的全部内容, 来源链接: utcz.com/z/534247.html