the below query is working
WITH MyCte AS
(
select row_number() OVER( order by RRH_MR_NUM) AS RowNum,
RRH_LOCATION_CD,RRH_MR_NUM,RRH_FIRST_NAME,RRH_PAT_SEX,RRH_REGN_DT,RRH_PAT_DOB,AGE=DATEDIFF(YY,RRH_PAT_DOB,MCS_CRT_DT),dbo.fn_parsehtml (MCS_CASE_SUMMARY) AS MCS_CASE_SUMMARY,
MCS_CRT_DT,MCS_CRT_UID, CPA_ADDR_1,CPA_ADDR_2,CPA_ADDR_3,CPA_ADDR_AREA,CPA_ADDR_CITY,
CPA_STATE_CD,CPA_COUNTRY_CD,CPA_PIN_CODE from MR_CASE_SUMMARY_HISTORY_2015
left outer join RE_REGISTRATION_HEADER
on MCS_MRD_NUMBER =rrh_mr_num
LEFT OUTER JOIN CO_PATIENT_ADDRESS_DETAIL ON RRH_COMM_ID=CPA_COMM_ID AND CPA_MAILING_ADDR='1'
) SELECT * FROM MyCte
WHERE month(MCS_CRT_DT)=04 and day(MCS_CRT_DT) between 01 and 02
the below query is not working when i add between for month and day output shows emoty
WITH MyCte AS
(
select row_number() OVER( order by RRH_MR_NUM) AS RowNum,
RRH_LOCATION_CD,RRH_MR_NUM,RRH_FIRST_NAME,RRH_PAT_SEX,RRH_REGN_DT,RRH_PAT_DOB,AGE=DATEDIFF(YY,RRH_PAT_DOB,MCS_CRT_DT),dbo.fn_parsehtml (MCS_CASE_SUMMARY) AS MCS_CASE_SUMMARY,
MCS_CRT_DT,MCS_CRT_UID, CPA_ADDR_1,CPA_ADDR_2,CPA_ADDR_3,CPA_ADDR_AREA,CPA_ADDR_CITY,
CPA_STATE_CD,CPA_COUNTRY_CD,CPA_PIN_CODE from MR_CASE_SUMMARY_HISTORY_2015
left outer join RE_REGISTRATION_HEADER
on MCS_MRD_NUMBER =rrh_mr_num
LEFT OUTER JOIN CO_PATIENT_ADDRESS_DETAIL ON RRH_COMM_ID=CPA_COMM_ID AND CPA_MAILING_ADDR='1'
) SELECT * FROM MyCte
WHERE RowNum BETWEEN 1 AND 10 and month(MCS_CRT_DT)=04 and day(MCS_CRT_DT) between 01 and 02
i use both between for rownum and month and day.
what is the mistake in my above sql query
What I have tried:
As above...