merge - 如何根据主键将两个序列合并在一起?
问题描述
我很好奇如何基于主键在 F# 中合并两个序列。我没有尝试任何东西,因为我不知道从哪里开始。
例子:
原版两套:
ID Cash
(1,$5)
(2,$10)
(3,$5)
ID Car
(1,Yes)
(2,No)
(3,Yes)
结果:
ID Cash Car
(1,$5,Yes)
(2,$10,No)
(3,$5,Yes)
解决方案
我可能会使用查询表达式来解决您的问题。
给定这个数据集:
let cashList = [ (1, 5); (2, 10); (3, 5) ]
let carList = [ (1, "Yes"); (2, "No"); (3, "Yes") ]
以下查询应该可以解决问题:
let result = query {
for cash in cashList do
join car in carList on (fst cash = fst car)
select (fst cash, snd cash, snd car)
}
推荐阅读
- sql - 具有不同数量的属性条目的数据库
- haskell - Haskell 更优雅地从 Sql 转换为其他类型
- sql-server - 如何选择特定列作为行?
- java - 无法将在 set on action 中创建的 Arraylist 传递给另一个 set on action 事件处理程序
- r - 从 google cloud API / googleway 返回与搜索查询匹配的所有唯一地点
- selenium - Selenium IDE 如何设置超时?
- angularjs - 'ng-repeat' 重新渲染会产生闪烁
- unix - 在文本文件的特定行上搜索数量并求和
- javascript - 试图从 Redux 存储返回一个数组,但返回一个空数组
- python - 熊猫数据框和系列