DECLARE @lb_error_flag BITSET @lb_error_flag=0SELECT @lb_error_flag=1 FROM Trp_table WHERE CONVERT(VARCHAR(11), LTRIM(RTRIM(From_date)), 106) < @pd_from_date AND CONVERT(VARCHAR(11), LTRIM(RTRIM(To _date)), 106) > @pd_to_date
create table trp_table (from_date varchar(15),to_date varchar(15))insert into trp_table(from_date,to_date)select CONVERT(VARCHAR(11), LTRIM(RTRIM('01-JUL-2010')), 106), CONVERT(VARCHAR(11), LTRIM(RTRIM('22-JUL-2010'))) UNION ALLSELECT CONVERT(VARCHAR(11), LTRIM(RTRIM('15-JUL-2010')), 106), CONVERT(VARCHAR(11), LTRIM(RTRIM('20-JUL-2010')))UNION ALLSELECT CONVERT(VARCHAR(11), LTRIM(RTRIM('11-FEB-2010')), 106), CONVERT(VARCHAR(11), LTRIM(RTRIM('27-JUL-2010')))DECLARE @lb_error_flag BITSELECT @lb_error_flag = CASE WHEN (from_date >= CONVERT(VARCHAR(11), LTRIM(RTRIM( '01-JUN-2010')), 106) and from_date <= CONVERT(VARCHAR(11), LTRIM(RTRIM( '30-JUl-2010')), 106) )AND (to_date >= CONVERT(VARCHAR(11), LTRIM(RTRIM( '01-JUN-2010')), 106) and to_date <= CONVERT(VARCHAR(11), LTRIM(RTRIM( '30-JUN-2010')), 106)) THEN 1 ELSE 0 ENDFROM trp_tableprint @lb_error_flag
create table #trp_table (from_date varchar(15),to_date varchar(15))insert into #trp_table(from_date,to_date)SELECT '01-JUL-2010', '22-JUL-2010' UNION ALLSELECT '15-JUL-2010', '20-JUL-2010' UNION ALLSELECT '11-FEB-2010', '27-JUL-2010' DECLARE @To_Date varchar(15), @from_date varchar(15), @To_DateDT DATETIME, @from_dateDT DATETIME SET @from_date = '01-JUN-2010'SET @To_Date = '30-JUN-2010'SET @from_dateDT = CONVERT(DATETIME, @From_Date, 106)SET @To_DateDT = CONVERT(DATETIME, @To_Date, 106)-- check variables are good:SELECT FromDate = @from_dateDT, ToDate = @To_DateDT-- check date ranges:SELECT From_date, To_date, Errors = CASE WHEN (From_date >= @from_dateDT AND From_date <= @To_DateDT) AND (To_date >= @from_dateDT AND To_date <= @To_DateDT) THEN 1 ELSE 0 ENDFROM ( -- convert string to datetime in this inner query or derived table SELECT From_date = CONVERT(DATETIME, From_Date, 106), To_date = CONVERT(DATETIME, To_Date, 106) FROM #trp_table) d