昨天碰到一个需要需要在SAS DIS环境中实现以下的SQL,想了半天没解决,还请各位高手指点指点。问题描述如下,受注表Order中,主键为受注番号OrdID和受注明细号DetailID,同时还有2个字段,一个为用户ID(CID),一个为受注日(OrderDate)。需要得到每条数据的前回受注日LastOrdDate。也就是说,用本条数据的用户ID,再去查找一次受注表,找到所有受注日比当前记录小的数据中受注日最大的那一个日期。
实例数据如下
OrdID DetailID CID OrderDate
1001 1 C001 20120605
1001 2 C001 20120713
1002 1 C001 20120827
1002 2 C001 20120827
1003 1 C002 20120614
1003 2 C002 20120709
期望结果
OrdID DetailID CID OrderDate LastOrdDate
1001 1 C001 20120605
1001 2 C001 20120713 20120605
1002 1 C001 20120827 20120713
1002 2 C001 20120827 20120713
1003 1 C002 20120614
1003 2 C002 20120709 20120614
多谢您的关注与参与!