如果选定日期在开始日期和结束日期之间,则创建任务 [英] Create Task if Selected Date is in between Start and End Date

查看:87
本文介绍了如果选定日期在开始日期和结束日期之间,则创建任务的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个日期,即创建任务表中的开始日期和结束日期。我需要选择一个日期。然后我必须从表中获取数据。条件是所选日期应该在创建任务表中的开始日期和结束日期之间。请帮帮我

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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆