对于下表,我需要两个脚本来提取两个后续表。 生成的脚本必须相当老派,并且与SQL2000向后兼容。 任何建议都非常感谢。
首先,对于CARE_ID的每个值,我需要返回EVENT_TYPE所在的所有行(CH,TE,BR),EVENT_DATE是EVENT_TYPE为SU的行的EVENT_DATE之前的最后一个日期。每个CARE_ID只会有一个SU实例。
例如 - 对于CARE_ID 6460,这是将返回的行
CARE_ID EVENT_ID EVENT_DATE EVENT_TYPE
6460 1699 05/01/2014 00:00 CH
其次我需要的与上面的内容非常相似,但我需要EVENT_TYPE所在的第一个实例(CH,TE,BR),而EVENT_DATE是EVENT_TYPE = SU的EVENT_DATE之后的第一个日期。
例如 - 对于CARE_ID 6460,这是将返回的行
CARE_ID EVENT_ID EVENT_DATE EVENT_TYPE
6460 1698 12/03/2014 00:00 CH
在这两种情况下,如果有多行由EVENT_DATE分隔,因为它们在同一日期有EVENT_DATE,那么tie tie是EVENT_ID。对于SU之前的实例,EVENT_ID值应该是最高的,对于SU之后的实例,EVENT_ID值应该是最低的。
CARE_ID EVENT_ID EVENT_DATE EVENT_TYPE
3 189 15/04/2010 00:00 SU
3 104 12/05/2010 00:00 CH
3 16 12/07/2010 00:00 BR
3 17 13/07/2010 00:00 BR
3 18 13/07/2010 00:00 BR
39 6 21/07/2009 00:00 CH
39 45 09/10/2009 00:00 TE
78 9 28/07/2009 00:00 TE
78 11 28/07/2009 00:00 CH
95 21 31/07/2009 00:00 CH
95 21 31/07/2009 00:00 TE
151 49 21/03/2010 00:00 TE
217 158 18/02/2010 00:00 SU
217 102 30/03/2010 00:00 CH
355 19 13/07/2010 00:00 BR
355 20 13/07/2010 00:00 BR
355 21 13/07/2010 00:00 BR
355 22 13/07/2010 00:00 BR
355 23 13/07/2010 00:00 BR
355 56 16/07/2010 00:00 TE
355 111 16/07/2010 00:00 CH
364 569 29/01/2011 00:00 SU
364 673 24/08/2012 00:00 TE
367 247 01/07/2010 00:00 SU
369 117 28/07/2010 00:00 CH
369 248 28/07/2010 00:00 SU
380 277 08/07/2011 00:00 TE
631 147 25/12/2009 00:00 CH
631 74 15/01/2010 00:00 TE
631 148 02/02/2010 00:00 CH
1066 472 11/11/2010 00:00 SU
1066 91 15/11/2010 00:00 TE
1661 216 25/01/2011 00:00 CH
1661 217 25/01/2011 00:00 CH
1661 95 01/02/2011 00:00 TE
1661 218 01/02/2011 00:00 CH
1663 97 25/01/2011 00:00 TE
1663 98 01/02/2011 00:00 TE
1663 223 01/02/2011 00:00 CH
1666 100 23/01/2011 00:00 TE
1666 225 01/02/2011 00:00 CH
1805 378 05/03/2011 00:00 CH
1805 383 05/03/2011 00:00 CH
1805 379 06/03/2011 00:00 CH
1805 381 07/03/2011 00:00 CH
2123 769 05/05/2011 00:00 SU
2123 280 10/07/2011 00:00 TE
2222 434 11/05/2011 00:00 CH
2222 513 15/06/2011 00:00 CH
4541 2285 01/02/2013 00:00 SU
4541 1688 04/03/2014 00:00 CH
4711 2300 01/02/2012 00:00 SU
4711 1257 07/02/2012 00:00 CH
4730 1262 22/11/2012 00:00 CH
4730 2303 30/11/2012 00:00 SU
6460 1699 05/01/2014 00:00 CH
6460 3201 10/01/2014 00:00 SU
6460 1698 12/03/2014 00:00 CH
6464 1701 18/12/2013 00:00 CH
答案 0 :(得分:0)
首先要确保它与SQL中的所有内容兼容,而不是在SQL而不是T-SQL中编写它。你到目前为止所完成的代码在哪里?