Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="qc"></param>
        /// <param name="retrieveTotalCount"></param>
        /// <returns></returns>
        public string GetQuerySql(QueryCondition qc, bool retrieveTotalCount)
        {
            string sql = ResourceHelper.LoadStringFromResource(
                Assembly.GetExecutingAssembly(),
                "MCS.Library.Data.Adapters.SplitPage.sql");

            string orderBy = qc.OrderByClause;

            sql = string.Format(
                sql,
                qc.GetTopClause(),
                qc.SelectFields,
                qc.FromClause,
                string.IsNullOrEmpty(qc.WhereClause) ? string.Empty : " AND " + qc.WhereClause,
                qc.OrderByClause,
                qc.GroupBy.IsNotEmpty() ? "GROUP BY " + qc.GroupBy : string.Empty,
                qc.RowIndex + 1,
                qc.RowIndex + qc.PageSize);

            if (retrieveTotalCount)
            {
                sql += TSqlBuilder.Instance.DBStatementSeperator + GetTotalCountSql(qc);
            }

            return(sql);
        }
Exemplo n.º 2
0
        private static string GetNoSplitPageSqlWithoutOrderBy(QueryCondition qc)
        {
            string sql = string.Format("SELECT {0}{1} FROM {2} WHERE 1 = 1 {3} {4}",
                                       qc.GetTopClause(),
                                       qc.SelectFields,
                                       qc.FromClause,
                                       qc.WhereClause.IsNotEmpty() ? " AND " + qc.WhereClause : string.Empty,
                                       qc.GroupBy.IsNotEmpty() ? "GROUP BY " + qc.GroupBy : string.Empty);

            return(sql);
        }