mysql基础02

1.常用函数

字符串处理函数

  1.  length(str)
    统计字符长度
  2. char_length(str)
    统计以(单个字符为单位)的字符长度
  3. ucase/upper(str)
    小写变大写
  4. lcase/lower(str)
    大写变小写
  5. substr(s,start,end)
    从s截start到end的字符串
  6. instr(str,"str1")
    str1在str的位置是?
  7. trim(str)
    去掉左右边的空格

数字函数

  1. abs()
    绝对值
  2. pi()
    圆周率
  3. mod(x,y)
    x%d?
  4. ceil/ceiling(x)
    返回不小于x的最小整数 (x 是小数)
  5. floor(x)
    返回不大于x的最大整数 (x 是有小数的数字)

日期函数

  1. curtime()
    当前时间
  2. curdate()
    当前日期
  3. now()
    当前日期+时间
  4. time/date/year/month/day/hour/minute/second(now())
    当前日期+时间中的时间/日期/年/月/日/时/钟/秒
  5. dayofmonth/dayofyear/monthname/dayname/quarter/week/weekday(curdate())
    统计当前日期的{当月的第几天}/{当前的第几天}/{几月}/{星期几}/{哪个季度}/{一年中的第几周}/{一周中的第几天}

聚集函数

用于统计数值类型的表头数据,注意聚合函数!!!(待补充)

  1. sum(头)
    求和
  2. avg(头)
    求平均值
  3. min/max(tou)
    求最小值/最大值
  4. count(头)
    统计表头值个数
  5. if函数
    if(条件,v1,v2) //满足走v1,否则v2
    ifnull(v1,v2) //不是null走v1,否则v2
  6. case函数
    select dept_id, dept_name,
    case dept_name
    when '运维部' then '技术部门'
    when '开发部' then '技术部门'
    when '测试部' then '技术部门'
    else '非技术部门'
    end as  别名

2.查询结果处理

  1. 分组
    select count(name),dep_id from people group by dep_id; 
    //查询每个部门id中有多少name,grouby by 后跟<不重复的表头>,重复的需要圈起来数羊
  2. 排序
    select name,salary from people order by salary asc或者desc;
    //根据salart的大小进行排序  升序或者降序
  3. 过滤
    select count(name),dep_id from people group by dep_id having where salary between 3000 and 5000;
    //在salary在3000-5000范围内,根据dep_id对name分组
    //having 用于带有group by 的语句,where无法使用
  4. 分页
    select count(name),dep_id from people group by dep_id limit 5;
    //输出前5行数据
    select count(name),dep_id from people group by dep_id limit n,m;
    //输出第n行到m行数据
    select count(name),dep_id from people group by dep_id limit 5 offset(2-1)*5;
    //输出第二页页大小为5的数据
    //offset 表示从第几页开始

3.表内容管理

  1. 插入
    //单行插入
    insert into people(name,dep_t,salary)values("liwu",1001,5000);
    //多行插入     
    insert into tarena.user values
    ("liwu",1001,5000);
    ("liwu",1001,5000);
    //使用set赋值
    insert into people set name="yaya",dep_id=1003,salary=6900;

  2. 删除
    delete from people where name="ysys";

  3. 修改
    //加条件修改
    update people set salary=9999 where name="yaya";
    //不加条件就批量修改了
    update people set salary=8888;

相关推荐

  1. MySQL基础回顾02

    2024-03-24 18:30:03       34 阅读
  2. mysql基础02

    2024-03-24 18:30:03       15 阅读
  3. 01_02_mysql02_DDL

    2024-03-24 18:30:03       39 阅读
  4. 深入浅出MySQL-01-【SQL基础

    2024-03-24 18:30:03       13 阅读
  5. 01_02_mysql04_数据类型

    2024-03-24 18:30:03       30 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-24 18:30:03       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-24 18:30:03       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-24 18:30:03       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-24 18:30:03       18 阅读

热门阅读

  1. Kafka系列之:Exactly-once support

    2024-03-24 18:30:03       17 阅读
  2. 海量数据处理和提高系统的并发能力的一些方案

    2024-03-24 18:30:03       20 阅读
  3. 如何在ubuntu 18.04中升级python 3.6到3.7

    2024-03-24 18:30:03       19 阅读
  4. CCSK-云计算安全基础知识认证

    2024-03-24 18:30:03       18 阅读
  5. OpenCV中如何进行模板匹配?

    2024-03-24 18:30:03       19 阅读
  6. 解释C语言中的函数及其参数传递方式

    2024-03-24 18:30:03       21 阅读
  7. 深入理解PHP+Redis实现分布式锁的相关问题

    2024-03-24 18:30:03       15 阅读
  8. 樊登读书-《终生成长》【视频笔记 +个人思考】

    2024-03-24 18:30:03       16 阅读
  9. Postman使用json进行接口关联

    2024-03-24 18:30:03       18 阅读
  10. vue前端面试题

    2024-03-24 18:30:03       13 阅读
  11. 1010: 【C1】【循环】求平均年龄

    2024-03-24 18:30:03       18 阅读