我有一个停车许可证表,其中包含validFrom和validTo字段,这些字段是日期时间字段。我还有另一个名为OvernightParkingSetting的表,它有两个日期时间字段NightStart和NightEnd。
我需要的是阅读所有在NightStart之前开始并在NightEnd之后结束的停车许可证,这意味着它是一个有效的过夜停车通行证。
我正在尝试在.NET,LINQ
中执行此操作任何有关逻辑或设计的帮助都将受到赞赏。
答案 0 :(得分:0)
我不确定如何编写项目的整个代码,但我可以使用逻辑和SQL语句帮助您正确的方向。您需要使用几个子查询来获取所需的OvernightParkingSetting表中的值。
从这里开始:
SELECT * FROM parkingPermitTable
WHERE validFrom < SELECT(NightStart FROM OvernightParkingSetting)
AND validTo > SELECT(NightEnd FROM OvernightParkingSetting)
这里我假设您的OvernightParkingSetting表只有一行。如果没有,您需要找到一种方法来限制接收特定的夜间开始和夜晚结束时间。
这将从停车许可表中选择有效时间早于夜间开始时间的任何行,以及有效时间晚于晚上结束时间。如果您希望它具有包容性,则可以相应地更改小于和大于运算符。
修改强>
这也假设所有变量都是日期时间变量。我相信这是最相关的变量。