MYSQL几种JOIN的初试

本文详细解释了SQL中INNER JOIN、LEFT JOIN和RIGHT JOIN的区别及应用场景。通过实例说明了不同连接方式如何处理表间数据匹配的问题,并简要介绍了MYSQL中实现全连接的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先INNER JOIN 假设A表有十条数据 B表有两条数据 A/B两表通过一个userid(以下的链接都是基于这个标准)关联 A内连接B的话出来的就是ID相等的那两条数据。
LEFT JOIN就是讲A表的十条数据全部列出来,再加上B表相关的数据 剩下的不足十条的部分都会用NULL表示.
RIGHT JOIN反之。
MYSQL的全链接需要靠UNION ALL这个关键字来完成。
目前对链接的用处止步于此,后面会学习在实际当中的用途 给自己加个油。

一、实训要求 1、搭建spark运行的整个框架。 2、运行环境测试。 3、数据预处理,对数据筛选。 4、数据查询处理。 5、根据选题至少完成5页及以上的业务查询。 6、项目正常运行部署,查询业务基本正常,设计功能整体实现 二、报告要求 1、字数(包含代码)不少于3000字 2、按照模板要求进行报告编写 3、报告格式规范、图文并茂、语言规范流畅 4、主题鲜明、中心突出、结论正确 5、内容新颖、心得体会读到 一、内容介绍 从数据文件中分析电影的信息,电影题材、片名、剧情关键字、分级、用户评分等关于影片的基本信息,从文件movies.dat、ratings.dat、users.dat中完成项目分配的问题,文件中有很多元素,用已有的信息完成下面内容的实现。 二、代码与功能说明 先建立Utils类,用于初始化配置信息以及解析原始数据 Utils代码: object Utils { val conf=new SparkConf().setAppName("FileReview").setMaster("local") val sc=new SparkContext(conf) sc.setLogLevel("ERROR") val movie=sc.textFile("D:/movies.dat") val ratings=sc.textFile("D:/ratings.dat") val users=sc.textFile("D:/users.dat") val movieRdd=movie.map(_.split("::")).map(m=>(m(0),m(1),m(2))) val ratingsRdd=ratings.map(_.split("::")).map(r=>(r(0),r(1),r(2))) val usersRdd=users.map(_.split("::")).map(u=>(u(0),u(1),u(2))) } 三.电影数据业务查询 1、求被评分次数最多的10 部电影并给出评分次数(电影名,评分次数)(spark rdd) 2、分别求男性女性当中评分最高的10部电影(性别,电影名,影评分)(spark rdd) 3、求 1997 年上映的电影中,评分最高的 10 部 Comedy 类电影(spark rdd) 4、查询各种类型电影中评价最高的5部电影(类型,电影名,平均影评分)(spark rdd) 5、各年评分最高的电影类型(年份,类型,影评分)(spark rdd) 6、每部电影的总得分和平均得分 (sparksql) 7、最热门的前50部电影(评分总数最高的)(电影名称,评分总数) (sparksql) 8、每个人评价最高的10部电影(评论人姓名,评论次数) (sparksql) 9、每个人的评分总和(评论人姓名,评分总和) (sparksql) 10 、数据可视化(扩展,选做)…………………………. 四、实训总结(800-1000字)按要求完成 使得格式在word中能正常输出,并给出模拟运行结果,要求任务全部完成并按顺序给出代码和模拟运行结果
最新发布
06-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值