@@ -541,6 +541,33 @@ func (s *Session) ExecuteAggregationQueryWithLegalNodes(paths []string, aggregat
541541 }
542542}
543543
544+ func (s * Session ) ExecuteGroupByQueryIntervalQuery (database * string , device , measurement string , aggregationType common.TAggregationType ,
545+ dataType int32 , startTime * int64 , endTime * int64 , interval * int64 , timeoutMs * int64 , isAligned * bool ) (* SessionDataSet , error ) {
546+
547+ request := rpc.TSGroupByQueryIntervalReq {SessionId : s .sessionId , StatementId : s .requestStatementId ,
548+ Database : database , Device : device , Measurement : measurement , AggregationType : aggregationType , DataType : dataType ,
549+ StartTime : startTime , EndTime : endTime , Interval : interval , FetchSize : & s .config .FetchSize ,
550+ Timeout : timeoutMs , IsAligned : isAligned }
551+ if resp , err := s .client .ExecuteGroupByQueryIntervalQuery (context .Background (), & request ); err == nil {
552+ if statusErr := VerifySuccess (resp .Status ); statusErr == nil {
553+ return NewSessionDataSet ("" , resp .Columns , resp .DataTypeList , resp .ColumnNameIndexMap , * resp .QueryId , s .client , s .sessionId , resp .QueryDataSet , resp .IgnoreTimeStamp != nil && * resp .IgnoreTimeStamp , s .config .FetchSize , timeoutMs ), err
554+ } else {
555+ return nil , statusErr
556+ }
557+ } else {
558+ if s .reconnect () {
559+ request .SessionId = s .sessionId
560+ resp , err = s .client .ExecuteGroupByQueryIntervalQuery (context .Background (), & request )
561+ if statusErr := VerifySuccess (resp .Status ); statusErr == nil {
562+ return NewSessionDataSet ("" , resp .Columns , resp .DataTypeList , resp .ColumnNameIndexMap , * resp .QueryId , s .client , s .sessionId , resp .QueryDataSet , resp .IgnoreTimeStamp != nil && * resp .IgnoreTimeStamp , s .config .FetchSize , timeoutMs ), err
563+ } else {
564+ return nil , statusErr
565+ }
566+ }
567+ return nil , err
568+ }
569+ }
570+
544571func (s * Session ) genTSInsertRecordReq (deviceId string , time int64 ,
545572 measurements []string ,
546573 types []TSDataType ,
0 commit comments