code: public function fetch($query, $params = array())
      {
          if(count($params)>0) $query = $this->parseCondition($query, $params);
          $mdKey = md5($query);
          if(!isset($this->result_query[$mdKey])){
              $this->result_query[$mdKey] = $this->query($query);
              $this->result_total_rows[$mdKey] = $this->result_query[$mdKey]->num_rows;
              $this->result_current_row[$mdKey] = 0;
          }else{
              $this->result_current_row[$mdKey]++;
              if($this->result_total_rows[$mdKey] <= $this->result_current_row[$mdKey]) {
                  unset($this->result_query[$mdKey]);
                  unset($this->result_current_row[$mdKey]);
                  unset($this->result_total_rows[$mdKey]);
              }
          }
  
          if( isset($this->result_query[$mdKey]) && is_a($this->result_query[$mdKey], 'mysqli_result') ) return $this->result_query[$mdKey]->fetch_assoc() ;
  
          return isset($this->result_query[$mdKey])? isset($this->result_query[$mdKey]) : null;
      }
docs: 한행 가져오기
  @param $query
  @param array $params
  @return bool|mixed|null
  @throws Exception