• mysql学习笔记


    一.mysql基础命令

    (1)查看当前所有数据库:show database;
    (2)打开指定的库:use 库名;
    (3)查看当前库的所有表:show tables;
    (4)查看其它库的所有表:show tables from 库名;
    (5)查看表结构:desc 表名;
    (6)查看服务器版本号:select version();
    doc命令:mysql --version 或 mysql --V

    二.mysql语法规范
    (1)不区分大小写,但建议关键字大写,表名、字段小写
    (2)每条命令最好用分号结尾
    (3)每条命令根据需要 可以缩进或换行

    三.注释
    (1)单行注释:#文件,-- 文字
    (2)多行注释:/* 文字 */

    四.mysql中 + :运算符
    (1)select 100+90:-两个操作数都是数值型,则做加法运算
    (2)select '123'+90:-其中有一方为字符串,试图将字符串转换为数值型
    -如果转换成功,则做加法运算
    select 'jho'+90:-如果转换失败,则将字符串转换成0
    select null+10: -其中有一方为null,则结果肯定为null

    五.like关键字:-一般和通配符一起使用
    (1)%:匹配多个字符,包括0个
    (2)_:匹配单个字符
    (3)\:转义字符
    (4)escape:自定义转义字符:escape '$'

    六.单行函数
    概念:类似于Java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名
    好处;隐藏了实现细节,提高代码的重用性
    调用:select 函数名 from 表
    特点:
    ①叫什么
    ②干什么
    分类:字符函数 数字函数 日期函数 其他函数 流程配置函数

    1.字符函数:
    show variables like '%char%'查询使用哪个类型
    (1)length:获取参数数值的字节个数,Utf8的字母站一个字节,汉字三个字节
    (2)concat:拼接字符串,select concat(last_name,'_',firset_name) 姓名 from employees;
    (3)upper\lower:转换大小写,函数可以嵌套函数
    (4)substr substring:索引从1 开始,截取从指定索引处后面所有字符;截取从指定索引处指定字符长度的字符。
    (5)instr:返回字符串第一次出现的索引,如果找不到返回0
    (6)trim:去掉前后空格,若是想去掉某些不是空格的,可以使用trim('a' from'aaazhaojinchaoaaa')
    (7)lpad:用指定的字符实现左填充指定长度
    (8)rpad:用指定的字符实现右填充指定长度
    当长度小于字符长度时,截取长度大小的字符。
    (9)replace 替换

    2.数学函数
    (1)round:四舍五入,select round(1.65);先计算数值,最后加上-,
    -1.55返回-2; 返回两位小数,末尾为0时不显示;

    (2)ceil:向上取整,返回一个》=该参数的最小整数
    select ceil(-7.78)返回-7
    (3)floor:向下取整,返回小鱼等于该参数的最大整数
    select ceil(-7.78)返回-8
    (4)truncate:截断
    select truncate
    (5)mod:取余

    3.日期函数
    (1)now:返回当前系统日期+时间
    (2)curdate:返回系统当前日期,不返回时间
    (3)curtime:返回当前系统中的时间,不返回日期
    (4)year:年
    (5)month:月,数字
    (6)monthname:月,英文
    (7)day:日
    (8)hour:时
    (9)minute:分秒
    (10)second:
    (11)str_to_date:将日期格式的字符转换成指定格式的日期
    (12)date-format:转换成字符串

    4.其他函数
    select version():查看数据库版本
    select database();查看数据库名称
    select user():查看数据库用户

    5.流程控制函数
    (1)if函数: if else 的效果
    (2)case函数的使用:
    使用一、Switch case的效果 case后边紧跟着字段或表达式 适合等值判断
    使用二、多重if,case后边没有加东西 适合区间判断

    七、分组函数
    1.sum:-对数值型字段求和,忽略null值
    2.avg:-对数值型字段求平均数,忽略null值
    3.max:-对任意类型字段求最大值,忽略null值
    4.min:-对任意类型字段求最小值,忽略null值
    5.count:-对任意类型字段求个数,忽略null值
    -效率
    在MYISAM存储引擎下,count(*)的效率最高,内部有个计数器,直接返回个数
    在INNODB存储引擎下,count(*)和count(1)差不多,比count(字段)高一下
    6.-分组函数可以和distinct搭配使用:去重,如sum(distinct 字段名称)

    八、分组查询:GROUP BY
    数据源 位置 关键字

    分组前筛选 原始表 group by字句的前面 where

    分组后筛选 分组后的结果集 group by字句的前面 having

    1.-分组函数做为条件肯定放在having字句中
    2.-能用分组前筛选,优先考虑使用分组前筛选
    3.-group by、having支持别名,where不支持别名
    4.-按照多个字段分组,放在group by后面,用逗号隔开,不分顺序

    转载请注明来源! https://www.cnblogs.com/icanner

    Code change world
  • 相关阅读:
    机器语言与汇编语言的关系
    环境变量
    .NET程序运行过程
    【转】计算机组成原理
    将大型 Page Blob 的页范围进行分段
    价格更低、SLA 更强的全新 Azure SQL 数据库服务等级将于 9 月正式发布
    把二元查找树转换成排序的双向链表
    初识C++
    Linux企业级项目实践之网络爬虫(25)——管理源代码之SVN
    Linux企业级项目实践之网络爬虫(24)——定制规则扩展为垂直爬虫
  • 原文地址:https://www.cnblogs.com/icanner/p/9605138.html
Copyright © 2020-2023  润新知