可以先定义一个删除某只股票某天的函数,然后用loop或ploop函数,去删除指定时间段内的数据:
def dropCodeData(dbName, tableName, code,day){ cnt = exec count(*) from loadTable(dbName, tableName) where date=day, ID=code if(cnt==0) return; hashNumber = hashBucket(code, 5) t = select * from loadTable(dbName, tableName) where date=day, hashBucket(ID, 5)=hashNumber delete from t where ID = code dropPartition(dbName,"/"+temporalFormat(day,"yyyyMMdd")+"/Key"+string(hashNumber)) loadTable(dbName, tableName).append!(t) } //ploop多线程并行删除某只股票多天的记录 ploop(dropCodeData{database("dfs://compodb"), "pt", `c2}, 2017.08.07..2017.08.11) //loop单线程删除某只股票多天的记录 loop(dropCodeData{database("dfs://compodb"), "pt", `c2}, 2017.08.07..2017.08.11) //删除某天某只股票的记录 dropCodeData(database("dfs://compodb"), "pt", `c2, 2017.08.10)