protected function selectOnlyNeededColumns(array $data)
    {
        if (is_null($this->onlyColumns)) {
            return $data;
        } else {
            return array_intersect_key($data, array_flip(array_merge($this->onlyColumns, $this->exceptions)));
        }
    }