gpt4 book ai didi

linq - 使用 LINQ 和 F# 的非等值连接

转载 作者:行者123 更新时间:2023-12-04 23:50:23 26 4
gpt4 key购买 nike

我正在尝试使用大于运算符的 LINQ 和 F# 连接两个表。这个问题和问 here 的问题基本一样,但使用 F# 而不是 C#。

就我而言,我在 SQL Server 数据库中有两个表:间隔时间线 ,两者都有字段 开始时间 结束时间 .

我需要对这两个表执行非等值联接,匹配每个表中的开始和结束时间。我试过这样做:

let dc = new TypedDataContext()

let qry =
query {
for i in dc.intervals do
join t in dc.timelines on
(t.start_time > i.start_time && t.start_time < i.end_time)
select (i, t)
}

但这可以预见地失败并出现错误:

Invalid join relation in 'join'. Expected 'expr expr', where is =, =?, ?= or ?=?.

最佳答案

虽然F# LINQ docs别提了,C# docs (第二段)使用 join 连接的状态关键字总是等值连接。假设行为在两种语言中是一致的可能是安全的。 @ildjarn 建议使用 workaround .

关于linq - 使用 LINQ 和 F# 的非等值连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23890825/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com