我有以下数据集:
Material Operation Txn_Date
M1004 100 8/25/2013 8:22:05 PM
M1004 100 8/25/2013 8:34:37 PM
M1004 100 8/29/2013 9:03:01 PM
M1004 600 8/29/2013 11:48:01 PM
M1004 600 8/30/2013 7:48:34 AM
M1004 600 8/30/2013 8:32:00 AM
M1004 500 8/30/2013 9:38:35 AM
M1004 500 8/30/2013 9:54:52 AM
M1004 500 8/30/2013 10:07:35 AM
M1004 500 8/30/2013 11:53:28 AM
M1004 500 9/2/2013 2:30:56 AM
M1004 200 9/2/2013 2:59:20 AM
M1004 900 9/2/2013 3:30:11 AM
M1004 600 9/3/2013 10:35:01 AM
M1004 600 9/3/2013 10:48:24 AM
M1004 600 9/3/2013 11:17:00 AM
我试图获得一个等于操作集中第一个 txn_date 的值。我正在使用:
SELECT
Material,
Operation,
Txn_Date,
MIN(Txn_Date) OVER(PARTITION BY Material, Operation) AS first_txn_date
FROM oper_tab
WHERE Material = 'M1004'
ORDER BY Txn_Date
问题是,如果第一组操作发生多次(如操作 600),我的分区将从第一组操作中获取第一个 txn_date。我想我需要对这个表做一些事情来指示连续的操作编号,以便我可以将它添加到我的分区中。
我可以在 a中做什么SELECT
来指示这种级别的分区?