0618_MySQL学习笔记

database

加号 +

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

回到顶部