protected override Expression VisitSubquery(SqlSubqueryExpression subquery)
        {
            if (subquery.Select != null)
            {
                Debug.Assert(subquery.Select.Columns.Count == 1);

                this.MarkColumnAsUsed(subquery.Select.Alias, subquery.Select.Columns[0].Name);
            }

            return(base.VisitSubquery(subquery));
        }
        protected virtual Expression VisitSubquery(SqlSubqueryExpression subquery)
        {
            var select = (SqlSelectExpression)this.Visit(subquery.Select);

            if (select != subquery.Select)
            {
                return(new SqlSubqueryExpression(subquery.Type, select));
            }

            return(subquery);
        }
Beispiel #3
0
        protected override Expression VisitSubquery(SqlSubqueryExpression subquery)
        {
            // Ignore aggregates in sub queries

            if (this.hasAggregate || ignoreInSubqueries)
            {
                return(subquery);
            }

            return(Visit(subquery));
        }
Beispiel #4
0
        protected override Expression VisitSubquery(SqlSubqueryExpression subquery)
        {
            var saveOrderings = this.gatheredOrderings;

            this.gatheredOrderings = null;
            var result = base.VisitSubquery(subquery);

            this.gatheredOrderings = saveOrderings;

            return(result);
        }
Beispiel #5
0
        protected override Expression VisitSubquery(SqlSubqueryExpression subquery)
        {
            this.Write("(");

            using (this.AcquireIndentationContext())
            {
                this.Visit(subquery.Select);
                this.WriteLine();
            }

            this.Write(")");

            return(subquery);
        }
Beispiel #6
0
 protected override Expression VisitSubquery(SqlSubqueryExpression subquery)
 {
     return(subquery);
 }
        protected override Expression VisitSubquery(SqlSubqueryExpression subquery)
        {
            // Don't gather inside scalar & exists

            return(subquery);
        }