Car_ID Int
APP_DT DateTime
表中的字段汽车历史:
Car_ID Int
Action String
Created_DT Datetime
我必须过滤app_dt和Created_dt之间的重叠日期,
(App_DT <= End) && (Created_dt >= Start && action == 'Closed')
然而,这辆车还没有关闭,所以历史上没有数据。
如果汽车尚未关闭,那么Created_dt也会成立......我怎么能在LINQ中做到这一点?
答案 0 :(得分:1)
您可以为此
使用Join
语句
var cars = from car in CarList //List<Car>
join carHistory in CarHistoryList //List<CarHistory>
on car.Car_ID equals carHistory.Car_ID
where car.App_DT <= End && carHistory.Created_dt >= Start
&& carHistory.Action == 'Closed'
select car;
如果您知道需要返回没有匹配cars
的{{1}},则需要将其设为left outer join