MySQL学习–第二天

2163-王同学

发表文章数:35

热门标签

, ,
首页 » 数据结构 » 正文

条件查询

逻辑与或非:

and or not

模糊查询

like 表示模糊查询

选项:

  • % 表示任意多个字符,如%广,搜索有广的字段
  • _ 表示一个字符
  • rlike 可以匹配正则
  • in 包含在里面的
  • 如果匹配%本身,那么则需要使用%%

between查询

  • betweem and →表示一段区间

null值判断

查询空值语句:is null

排序选择

  • order by 限制条件,默认是升序

聚合函数

聚合函数主要是为了快速得到结果
常用函数列表:

  • count 统计行数
  • max 计算最大值
  • min 计算最小值
  • sum 求和
  • avg 求平均数

数学函数:

  • ceiling,向上取整
  • mod函数,取模
  • round 函数,四舍五入到最近的整数

字符串函数:

  • substr(string,start,length) 函数,截取字符串,start从1开始
  • left(str,len),返回字符串str的最左面的len个字符
  • right(str,len),返回字符串的最右面的len个字符

分组查询

  • group by 字段,以该字段作为分组依据来分组
    分组之后不能使用where做条件过滤,需要使用having函数
    where 与 having 的区别:
    where 用在from 之后的条件过滤
    having 用在分组之后的条件过滤

limit分页

如果数据量很大的话,一次性将所有数据查询出来,不仅不方便查看而且耗费传输带宽,那么就可以使用分页功能
如:
1.select * from students limit start,count;→start从第几条数据开始,count表示获取几条数据

连接查询

内连接查询

查询的结果为两个表匹配到的数据,两个表都能匹配上的数据将返回给结果集,否则返回控制
格式:

select 信息 from 第一个表 inner join 第二个表 on 条件; 

其中条件为两个表相关联的地方,如 b1.id = b2.id

左右连接

查询的结果为两个表匹配到的数据,右表特有的数据,对于坐标中不存在的数据使用null填充
格式:

select 信息 from 第一个表 right/left join 第二个表 on 条件 ;

其中条件为两个表相关联的地方,如 b1.id = b2.id,若是右连接,如果b2有的数据,b1没有,则填充b1的行为null,反之亦然

全连接

虽然MySQL本身并不支持 full join(全连接),但可以通过union,和union all 来实现
格式:

select 信息1 from 表一 union/union all select 信息2 from 表2;

注意:union 对于两个表中的重复信息,只会选择一个显示,而union all 会显示所有信息,效率也是union all更高

子查询

在一个select 语句中嵌入另外一个select语句,嵌入的这个select语句就是子查询语句,子查询是辅助主查询的,充当数据源,或者充当条件。子查询是一条独立的语句,即使单独拿出来子查询也是可以正常执行的
子查询分为

  • 标量子查询:标量子查询是指子查询返回的是单一值的标量,如一个数字或一个字符串,也是子查询中最简单的返回形式
  • 列级子查询:子查询返回的是一列(或一列多行)的数据,称之为列级子查询
  • 行级子查询:子查询返回的是一行(或一行多列)的数据,称之为行级子查询
  • 表级子查询:子查询返回的是一个表,该表可以充当数据源
    子查询常用的四个关键字
  • in,只要符合的就可以
  • all,需要全部符合
  • any、some,只要有一个符合就可以

未经允许不得转载:作者:2163-王同学, 转载或复制请以 超链接形式 并注明出处 拜师资源博客
原文地址:《MySQL学习–第二天》 发布于2021-10-10

分享到:
赞(0) 打赏

评论 抢沙发

评论前必须登录!

  注册



长按图片转发给朋友

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

Vieu3.3主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录