如果选定日期在开始日期和结束日期之间,则创建任务 [英] Create Task if Selected Date is in between Start and End Date
问题描述
我有两个日期,即创建任务表中的开始日期和结束日期。我需要选择一个日期。然后我必须从表中获取数据。条件是所选日期应该在创建任务表中的开始日期和结束日期之间。请帮帮我
I am having 2 dates that is Start date and end date from Create task table. I need to select a date.then i have to get the data from tables.the condition is that the selected date should be between the start date and end date which is in create task table. please help me
SqlDataReader dr = ob.exdr("select CreateTask.Task,EmployeeDetails.Category_name,EmployeeDetails.Employee_name,TaskAssigned.Start_time,TaskAssigned.End_time,LeaveDetails.leave,CreateTask.Start_date,CreateTask.End_date from CreateTask,TaskCategoryMastertable,EmployeeDetails,LeaveDetails,TaskAssigned WHERE CreateTask.Start_date >= '" + enterdate + "' AND CreateTask.End_date <= '" + enterdate + "'");
这里enterdate是我从日历中选择的日期..
这里我没有结果。
当执行这个im得到不正确的输出。请任何人为我写查询..条件是,如果我选择一个在开始日期和结束日期之间的日期,那么数据应该是显示..请帮助我
Here enterdate is the date which i select from the calender..
here I m getting no result.
When executing this im getting incorrect output.please anyone write query for me..the condition is that if im selecting a date which is in between the start date and end date then the datas should be displayed..please help me
推荐答案
您好,
您的查询必须是这样的,
Hi,
Your query must be like this,
select CreateTask.Task,EmployeeDetails.Category_name,EmployeeDetails.Employee_name,TaskAssigned.Start_time,TaskAssigned.End_time,LeaveDetails.leave,CreateTask.Start_date,CreateTask.End_date from CreateTask,TaskCategoryMastertable,EmployeeDetails,LeaveDetails,TaskAssigned WHERE CONVERT(DATE,CreateTask.Start_date) between CONVERT(DATE, enterdate ) AND CONVERT(DATE, enterdate ))
嗨Sruthy,
tr以下脚本...
Hi Sruthy,
try the below script...
SELECT
ct.Task,
ct.Start_date,
ct.End_date,
e.Category_name,
e.Employee_name,
ta.Start_time,
ta.End_time,
l.leave
FROM
EmployeeDetails e
INNER JOIN LeaveDetails l ON e.Employee_id = l.Employee_id
INNER JOIN TaskAssigned ta ON e.Employee_id = ta.Employee_id
LEFT JOIN CreateTask ct ON ta.Task_id = ct.Task_id
where ct.Start_date >= '' AND ct.End_date <= ''
我认为它的一个逻辑错误。没有转换错误
在你的密码中你检查
I think its a logic error.NOT a Conversion Error
In ur code u r checking
WHERE CreateTask.Start_date >= '" + enterdate + "' AND CreateTask.End_date <= '" + enterdate + "'");
认为您的表格的开始日期为01-10-2011,结束日期为01-20-2011
和你的参赛日期是01-14-2011
来自你的查询你检查
01-10-2011> = 01-14-2011(除开始日期=输入日期外始终为假)
AND
01-20-2011< = 01 -14-2011(总是假,除了结束日期= ente r date)
所以请将查询更改为
consider ur table having start date as 01-10-2011 and end date as 01-20-2011
and ur entry date is 01-14-2011
from ur query u check
01-10-2011>=01-14-2011(always false except start date=enter date)
AND
01-20-2011<=01-14-2011(always false except end date=enter date)
So plz change query to
WHERE CreateTask.Start_date <= '" + enterdate + "' AND CreateTask.End_date >= '" + enterdate + "'");
OR
WHERE '" + enterdate + "' BETWEEN CreateTask.Start_date AND CreateTask.End_date);
这篇关于如果选定日期在开始日期和结束日期之间,则创建任务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!