code: func (r *selectResult) Next(ctx context.Context, chk *chunk.Chunk) error {
  	chk.Reset()
  	for !chk.IsFull() {
  		if r.selectResp == nil || r.respChkIdx == len(r.selectResp.Chunks) {
  			err := r.getSelectResp()
  			if err != nil || r.selectResp == nil {
  				return err
  			}
  		}
  		err := r.readRowsData(chk)
  		if err != nil {
  			return err
  		}
  		if len(r.selectResp.Chunks[r.respChkIdx].RowsData) == 0 {
  			r.respChkIdx++
  		}
  	}
  	return nil
  }
docs: // Next reads data to the chunk.