MySQL复习一——查询-20200401

排序
  1. 语法
    SELECT 查询列表 FROM 表 WHERE 筛选条件 ORDER BY排序列表【ASC/DESC】
  2. 特点
    1》.asc:升序,如果不写表示默认升序;
    desc:降序
    2》.排序列表支持 单字段 多字段 函数 表达式 别名
    3》.order by一般放在查询语句最后(除limit之外)
常见函数
  1. 概述
    功能:提高重用性和隐藏实现细节
    调用:select 函数名(实参列表);

  2. 单行函数
    ①字符函数:
    concat:连接
    substr:截取子串
    length:获取字节长度
    instr:获取子串第一次出现的位置
    replace:替换
    upper:转大写
    lower:转小写
    trim:去除字串前后指定字符
    lpap:左填充
    rapap:右填充
    ②数学函数
    mod:取余
    round:四舍五入
    ceil:向上取整
    floor:向下取整
    rand:随机数
    truncate:截断
    ③日期函数
    now:获取系统日期及时间
    curdate:日期
    curtime:时间
    year:年
    month:月
    day:日
    hour:时
    minute:分
    second:秒
    yearname:年的英文名
    str_to_date:字符转化为日期
    date_format:日期转化为字符
    datediff:两个日期相差天数
    ④其他函数
    version:查看版本号
    user:查看用户
    database:查看库名
    password:以加密形式显示字符
    md5:以md5加密形式显示字符
    ⑤流程控制函数
    if:
    if(条件,语句1,语句2):和双面运算符类似
    case:
    ①case 表达式
    when 常量1 then 语句1
    when 常量2 then 语句2

    else 语句n
    end
    ②case
    when 条件1 then 语句1
    when 条件2 then 语句2

    else 语句n
    end

  3. 分组函数
    分类: max 最大值
    min 最小值
    avg平均值
    sum 总和
    count 总个数
    特点:①sum avg一般适用于数值型
    ②都忽略null值
    ③可以与distinct连用去除重复值
    ④一般用count(*)统计行数
    ⑤和分组函数一同查询字段,要求是group by后出现的字段

  4. 分组查询
    语法:select 分组函数,分组后的字段 from 表 [where 筛选条件] group by分组的字段 [having 分组后的筛选] [order by排序的字段asc/desc ]
    特点

使用关键字筛选的表位置
分组前筛选where原始表group by前边
分组后筛选having分组后的虚拟表group by后边
  1. 连接查询:又称为多表查询
    分类:
    内连接:包括等值连接 非等值连接 自然连接
    外连接 包括右外连接 左外连接 全外连接(mysql不支持)
    交叉连接
    语法
    等值连接
    selcet 查询列表 from 表1 as 别名 ,表2 as 别名...... where 表1.key=表2.key...... [and 筛选条件] [group by....] [having 分组后筛选] [order by...]
    非等值连接
    select 查询列表 from 表1 as别名,表2as别名...... where 表1.key非等值连接条件2.key....... [and 筛选条件] [group by....] [having 分组后筛选] [order by...]
    自连接
    select 查询列表 from 表as别名1,表as别名2...... where 别名1.key=别名2.key..... [and 筛选条件] [group by....] [having 分组后筛选] [order by...]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值