public function where($field, $valueOrOperator = null, $value = null)
    {
        if (is_string($field) && $valueOrOperator === null) {
            throw new \InvalidArgumentException('Invalid second argument; argument must not be null in case when first argument is string');
        }

        return $this->addCondition('AND', $field, ($value === null) ? $valueOrOperator : $value, ($value === null) ? '=' : $valueOrOperator);
    }