私はあなたの要件について100%明確ではありません。最初の行では、「入力日付範囲が 2 つの日付フィールドの間にある」レコードを要求しましたが、「追加」行では、予定の開始日が等しくないレコードを返したくないことを暗示しています。入力の終了日。これらは 2 つの異なる要件であると考えているため、2 つの異なるクエリを提供します。
最初のクエリは次のとおりです:
from t1 in db.Appointments where date1 >= t1.AppointmentStart where date2 <= t1.AppointmentEnd select t1;
プレ>2 番目のクエリは次のとおりです。
from t1 in db.Appointments where date2 > t1.AppointmentStart where date1 < t1.AppointmentEnd select t1;
プレ>最初のクエリは、入力日付を「含む」レコードを返します。
2 番目のクエリは、入力日付と「重複」するレコードを返します。
重複クエリが必要な方が理にかなっていると思います。これは、「14:00 - 15:00 は 15:00-16:00 の値を返さない」という要件を満たします。
要件の理解に誤りがあり、変更が必要な場合はお知らせください。