c# - SQL 无法插入附加条件
问题描述
下面是我的 SQL 查询:
var staffLeaves = (from staffLeave in db.StaffLeaves
join leavetype in db.LeaveTypes
on staffLeave.LeaveID equals leavetype.LeaveTypeID
join staff in db.Staffs
on staffLeave.StaffID equals staff.StaffID
where staffLeave.Year == latest_year.Year
//new insertion start
join jobinfo in db.JobInfo
on staffLeave.StaffID equals jobinfo.staff_id
where jobinfo.last_date == null
error --> OR jobinfo.last_date > DateTime.Now
//new insertion end
orderby leavetype.Description ascending
select new { staffLeave = staffLeave, staff = staff, leavetype = leavetype }).AsQueryable();
我可以知道如何加入附加条件OR jobinfo.last_date > DateTime.Now
吗?
或者我是否需要join
用同一个表但这次使用第二个条件来实现另一个语句。
我正在使用 SQL Server Management Studio 2014。
谢谢你。
解决方案
试试这个:
var staffLeaves = (from staffLeave in db.StaffLeaves
from leavetype in db.LeaveTypes
from staff in db.Staffs
from jobinfo in db.JobInfo
where staffLeave.LeaveID == leavetype.LeaveTypeID &&
staffLeave.LeaveID == leavetype.LeaveTypeID &&
staffLeave.Year == latest_year.Year &&
staffLeave.StaffID == jobinfo.staff_id &&
(jobinfo.last_date == null || jobinfo.last_date > DateTime.Now)
orderby leavetype.Description ascending
select new { staffLeave = staffLeave, staff = staff, leavetype = leavetype }).AsQueryable();
推荐阅读
- java - 使用java堆外内存和兼容性
- powershell - 动态更改对象的嵌套属性(例如:$_.Property.SubProperty)
- sed - sed替换单引号
- c# - 将构建的客户端代码嵌入到独立的单个文件 .net5 应用程序中
- c# - 如何在 C# 中播放使用 CSCORE WASAPI 捕获的音频
- python - 找出连续多少天在熊猫中有特定值
- python - 结合 csvreader 生成器对象中两个单独列的日期和时间
- python - 从 pandas 长格式创建事件图
- javascript - 复杂的 JSON obj 和 jQuery 或 Javascript 映射到特定的键、值
- excel - Sumifs 范围内的日期差异