【SQL】spark sql 不等值 join
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,products一个商品价格变化的表,orders商品订单,记录每次购买商品和日期基于Spark SQL中的不等值join实现orders和products的匹配,统计每个订单中商品对应当时的价格缓慢
千家信息网最后更新 2026年11月04日【SQL】spark sql 不等值 join
products一个商品价格变化的表,orders商品订单,记录每次购买商品和日期
基于Spark SQL中的不等值join实现orders和products的匹配,统计每个订单中商品对应当时的价格
缓慢变化的商品价格表
旺仔牛奶,发生过一次价格变更
scala> val products = sc.parallelize(Array( | ("旺仔牛奶", "2017-01-01", "2018-01-01", 4), | ("旺仔牛奶", "2018-01-02", "2020-01-01", 5), | ("王老吉", "2017-01-02", "2019-01-01", 5), | ("卫龙辣条", "2010-01-01", "2020-01-01", 2) | )).toDF("name", "startDate", "endDate", "price")products: org.apache.spark.sql.DataFrame = [name: string, startDate: string ... 2 more fields]scala> products.show();+----+----------+----------+-----+|name| startDate| endDate|price|+----+----------+----------+-----+|旺仔牛奶|2017-01-01|2018-01-01| 4||旺仔牛奶|2018-01-02|2020-01-01| 5|| 王老吉|2017-01-02|2019-01-01| 5||卫龙辣条|2010-01-01|2020-01-01| 2|+----+----------+----------+-----+订单表(商品名称,订单日期)
旺仔牛奶在不同价格时段分别发生了一次订单
scala> val orders = sc.parallelize(Array( | ("2017-06-01", "旺仔牛奶"), | ("2017-07-01", "王老吉"), | ("2018-03-01", "旺仔牛奶") | )).toDF("date", "product")orders: org.apache.spark.sql.DataFrame = [date: string, product: string]scala> orders.show+----------+-------+| date|product|+----------+-------+|2017-06-01|旺仔牛奶||2017-07-01| 王老吉||2018-03-01|旺仔牛奶|+----------+-------+通过不等值连接,计算每个订单当时的商品价格
查看出旺仔牛奶,两个订单在不同时间段上对应的价格
scala> orders.join(products, $"product" === $"name" && $"date" >= $"startDate" && $"date" <= $"endDate").show()+-----------+------------+----------+------------+-------------+-----+| date | product | name | startDate | endDate | price|+-----------+------------+----------+------------+-------------+-----+|2017-07-01| 王老吉 | 王老吉 |2017-01-02|2019-01-01 | 5 ||2017-06-01| 旺仔牛奶 |旺仔牛奶|2017-01-01|2018-01-01 | 4 ||2018-03-01| 旺仔牛奶 |旺仔牛奶|2018-01-02|2020-01-01 | 5 |+-----------+------------+----------+------------+-------------+-----+
牛奶
价格
商品
订单
王老
不同
商品价格
日期
变化
缓慢
两个
价格表
名称
时段
时间
时间段
统计
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
百单网互联网科技有限公司怎么样
美国互联网科技巨头监管
互联网科技公司发展
互联网科技革命
小马过河互联网科技
智慧科技互联网
亿账通互联网科技
互联网科技公司做什么
恒生科技互联网指数分析
哈尔滨秒房互联网科技有限公司
青海省互联网新科技
华中科技有哪些互联网大佬
互联网汽车科技小镇
互联网科技中介
现代互联网科技股
互联网公司黑科技创始人
中天科技中国工业互联网
互联网科技融合创新
广东鹅鹅鹅互联网科技有限公司
互联网科技的前景
咖啡
哈尔滨大商圈互联网科技有限公司
互联网巨头科技公司
科技与互联网发展
长亮科技 互联网金融
互联网巨头投资的硬核科技
江苏南京365互联网科技
互联网公司科技股
银川新华互联网科技学校联系电话
互联网科技包装股