Пример #1
0
        public override ISelect GenerateSelectWithoutDefaultOrderBy()
        {
            var hasNoConfiguration = customAlias == null && !OrderByClauses.Any() && !WhereClauses.Any() &&
                                     ColumnSelection == null && RowSelection == null;

            return(hasNoConfiguration ? innerSelect : base.GenerateSelectWithoutDefaultOrderBy());
        }
Пример #2
0
        internal string BuildStatement()
        {
            var start = StartClause == null ? null : "START " + CypherStartClauseBuilder.BuildStartClause(StartClause);
            var match = MatchClauses.Any()
                            ? "MATCH " +
                        String.Join(", ", MatchClauses.Select(CypherMatchClauseBuilder.BuildMatchClause))
                            : null;
            var createRel = CreateRelationpClause == null
                                ? null
                                : "CREATE " +
                            CypherCreateRelationshipClauseBuilder.BuildCreateClause(CreateRelationpClause);

            var where = WherePredicate == null
                            ? null
                            : "WHERE " + CypherWhereClauseBuilder.BuildWhereClause(WherePredicate);
            var setClause = SetterClauses.Any()
                                ? "SET " +
                            String.Join(" SET ", SetterClauses.Select(CypherSetClauseBuilder.BuildSetClause))
                                : null;
            var orderBy = OrderByClauses.Any()
                              ? "ORDER BY " +
                          String.Join(", ", OrderByClauses.Select(CypherOrderByClauseBuilder.BuildOrderByClause))
                              : null;

            var @return = ReturnClause == null ? null : "RETURN " + CypherReturnsClauseBuilder.BuildReturnClause(ReturnClause);
            var @delete = DeleteClause == null ? null : "DELETE " + CypherDeleteClauseBuilder.BuildDeleteClause(DeleteClause);
            var skip    = Skip == null ? null : String.Format("SKIP {0}", Skip);
            var limit   = Limit == null ? null : String.Format("LIMIT {0}", Limit);

            return(String.Join(" ",
                               new[] { start, createRel, match, where, setClause, @return, @delete, orderBy, skip, limit }.Where(s => s != null)));
        }