我正在尝试使用LINQ和F#以大于号运算符连接两个表。这个问题与此处链接所问的问题基本相同,但是使用的是F#而不是C#。
在我的情况下,我有一个SQL Server数据库中的两个表:intervals和timelines,它们都有start_time和end_time字段。
我需要在这两个表上执行非等值连接,匹配每个表中的开始和结束时间。我尝试以下方法实现:
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)
}
但是这很容易失败,并出现以下错误:
在“join”中无效的连接关系。期望“expr expr”,其中 是 =、=?、?= 或 ?=?。
for
和一个where
,而不是使用join
? - ildjarn