public ExpressionClip SubString(int start, int length)
        {
            ExpressionClip expr = ExpressionFactory.CreateCloneExpression(this);

            expr.Sql = ColumnFormatter.SubString(this.Sql, start, length);
            return(expr);
        }
        public ExpressionClip Avg()
        {
            ExpressionClip expr = ExpressionFactory.CreateCloneExpression(this);

            expr.Sql = ColumnFormatter.Avg(this.Sql);

            return(expr);
        }
        public static ExpressionClip GetCurrentDate()
        {
            ExpressionClip expr = new ExpressionClip();

            expr.Sql    = ColumnFormatter.GetCurrentDate();
            expr.dbType = DbType.DateTime;
            return(expr);
        }
        public ExpressionClip Count(bool isDistinct)
        {
            ExpressionClip expr = ExpressionFactory.CreateCloneExpression(this);

            expr.Sql    = ColumnFormatter.Count(this.Sql, isDistinct);
            expr.dbType = DbType.Int32;

            return(expr);
        }
        public ExpressionClip GetDay()
        {
            ExpressionClip expr = ExpressionFactory.CreateCloneExpression(this);

            expr.Sql    = ColumnFormatter.DatePart(this.Sql, ColumnFormatter.DatePartType.Day);
            expr.dbType = DbType.Int32;

            return(expr);
        }