IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MySQL学习--第二天 -> 正文阅读

[大数据]MySQL学习--第二天

条件查询

逻辑与或非:

andornot

模糊查询

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,对于子查询返回列中的所有值,如果比较结果为true,则返回true
  • any、some,对于子查询返回的列中的任一数值,如果比较结果为true,则返回true

保存查询结果

命令:insert into 表名 (列1,列2) select … ;,可以将查询到的结果直接保存到表中

如:将student 的数据选择插入temp_table中:

mysql> insert into temp_table select b1.id,b1.id,b1.姓名,b1.class_id,b1.年龄 from student as b1;
Query OK, 5 rows affected (0.00 sec)
Records: 5  Duplicates: 0  Warnings: 0

mysql> select * from temp_table;
+----+--------+-----------+------------+---------+
| id | stu_id | stu_name  | class_name | stu_age |
+----+--------+-----------+------------+---------+
|  1 |      1 | 张三      | 1          |      22 |
|  2 |      2 | 李四      | 2          |      21 |
|  3 |      3 | 王五      | 2          |      23 |
|  4 |      4 | 赵六      | 2          |      24 |
|  5 |      5 | 欧阳七    | 3          |      21 |
+----+--------+-----------+------------+---------+
5 rows in set (0.00 sec)

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-11 17:35:16  更:2021-10-11 17:35:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:23:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码