/**
         * Merge predicate.
         *
         * @return Or predicate segment
         */
        public OrPredicateSegment MergePredicate()
        {
            var logicalOperator = LogicalOperator.ValueFrom(_operator);

            if (!logicalOperator.HasValue)
            {
                throw new ShardingException($"operator:{_operator} cant found logical operator");
            }
            return(LogicalOperatorEnum.OR == logicalOperator.Value ? MergeOrPredicateSegment() : MergeAndPredicateSegment());
        }