Esempio n. 1
0
	void GroupByField(DimensionExpression expression) {
		if (la.kind == 24 || la.kind == 26) {
			if (la.kind == 24) {
				Get();
				expression.OrderDescending = true; 
			} else {
				Get();
				expression.OrderDescending = false; 
			}
			Expect(1);
			expression.Take = Int32.Parse(t.val); 
		}
		SelectField(null, expression);
		if (la.kind == 25) {
			var inClause = new InExpression(); expression.InClause = inClause; 
			InClause(inClause);
		}
		if (la.kind == 27) {
			Get();
			var dim = new DimensionExpression(); 
			Primary(dim, false);
			expression.Ordering = dim; 
		}
	}
Esempio n. 2
0
	void InClause(InExpression inExpression) {
		Expect(25);
		Expect(7);
		ExpressionTreeBase lit = null; 
		LiteralExpression(ref lit);
		inExpression.AddItem(lit); 
		while (la.kind == 18) {
			Get();
			ExpressionTreeBase lit2 = null; 
			LiteralExpression(ref lit2);
			inExpression.AddItem(lit2); 
		}
		Expect(8);
	}