有没有一种解决此问题的好方法:假设我想选择在给定分组的先前选定记录之前至少6个月的记录。
IE中。我有:
Col A Col B Date
1 A 2015-01-01 00:00:00
1 A 2014-10-01 00:00:00
1 A 2014-05-01 00:00:00
1 A 2014-01-01 00:00:00
1 B 2014-01-01 00:00:00
2 A 2015-01-01 00:00:00
2 A 2014-10-01 00:00:00
2 A 2014-01-01 00:00:00
2 A 2013-10-01 00:00:00
我想只选择相对于之前选择的日期至少相隔6个月的日期。即它将返回:
Col A Col B Date
1 A 2015-01-01 00:00:00
1 A 2014-05-01 00:00:00
1 B 2014-01-01 00:00:00
2 A 2015-01-01 00:00:00
2 A 2014-01-01 00:00:00
如果你想选择相对于最新的
,我很明显如何使用排序来做到这一点(即:
SELECT b.date, b..., a.latest_date
FROM(
SELECT *, row_number OVER PARTITION BY Col A, Col B ORDER BY Date as row_number
FROM table1) temp
WHERE row_number = 1) a
INNER JOIN TABLE 1 b
ON KEY)
WHERE datediff(date, latestdate)/365 > 0.5
左右
,但我有点不清楚你将如何相对于彼此做这件事。有没有办法在Hive / Scala中递归执行此操作?
答案 0 :(得分:0)
嗨,有一个窗口滞后的概念,并且引导概念既是蜂巢又是火花,你可以在两者中完成这个任务。这是spark中的代码。
<span className="ms-Table-cell">
<div>
<IconButton
onClick= { this._removeItemFromDetail }
id={ detail.Id.toString() }
iconProps={ { iconName: 'Cancel' } }
title='Delete' />
</div>
</span>
private _removeItemFromDetail(e) {
console.log("e.target",e.target);
}