public function getOneOrNullResult($hydrationMode = null)
    {
        $result = $this->execute(null, $hydrationMode);

        if (count($result) > 1) {
            throw QueryException::nonUniqueResult();
        } elseif (count($result) <= 0) {
            return;
        }

        return $result->first();
    }