Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SQL无法插入附加条件_C#_Sql_Sql Server - Fatal编程技术网

C# SQL无法插入附加条件

C# SQL无法插入附加条件,c#,sql,sql-server,C#,Sql,Sql Server,下面是我的SQL查询: var staffLeaves = (from staffLeave in db.StaffLeaves join leavetype in db.LeaveTypes on staffLeave.LeaveID equals leavetype.LeaveTypeID join staff in db.Staffs o

下面是我的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();
我可以知道如何添加附加条件
或jobinfo.last_date>DateTime.Now

或者我是否需要使用相同的表实现另一个
join
语句,但这次使用第二个条件

我正在使用SQL Server Management Studio 2014

多谢各位

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 and jobinfo.last_date == null and jobinfo.last_date > DateTime.Now)


               //new insertion end

               orderby leavetype.Description ascending

               select new { staffLeave = staffLeave, staff = staff, leavetype = leavetype }).AsQueryable(); 
所以我在连接中添加了where条件

试试这个:

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();

请。添加您的数据库名称,如SQL SERVER、ORACLE、MYSQL等,我会将其添加进去