实现min和max等的函数查询
2015-04-06 11:28:11 访问(1368) 赞(0) 踩(0)
生成和输出的SQL语句
select
(max(t.Score)) as maxValue,
(min(t.Score)) as minValue
from UTB_EXAM_SCORE t
关键代码
ISelectDriver iselect = entity;
iselect.AddISelectItemWithEntityFieldInfo
(
SlowX.Core.Enums.SqlCommonFn.EmSqlCommonFn._Max,
"maxValue",
entity._Score
);
iselect.AddISelectItemWithEntityFieldInfo
(
SlowX.Core.Enums.SqlCommonFn.EmSqlCommonFn._Min,
"minValue",
entity._Score
);
IOrderByDriver iorder = entity;
iorder.AddIOrderByItemWithEntityFieldInfo(entity._ID, SlowX.Core.Enums.OrderBy.EmOrderBy.ASC);
// min和max用到了组合函数查询,禁止order by(会报错)
iorder.IsEnabledOrderBy = false;
代码写法
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using SlowX.DAL.Helpers;
using SlowX.Core.ICoreClasses;
using System.Data;
using SlowX.Functions.Functions;
using SlowX.Core.CoreClasses;
public partial class ExamSQL : System.Web.UI.Page
{
protected string strResult = "";
protected void Page_Load(object sender, EventArgs e)
{
DataBindTheContorls(null);
}
#region 操作
/// <summary>
///
/// </summary>
/// <param name="xdbHelper"></param>
protected void DataBindTheContorls(DBHelper xdbHelper)
{
string theResult = null;
bool bIsCreate = true;
if (xdbHelper == null)
{
xdbHelper = SlowX.DAL.Helpers.DBHelper.CreateDBHelper();
}
else
{
// 没有打开链接 //
bIsCreate = xdbHelper.IsNotOpen();
}
try
{
if (bIsCreate)
xdbHelper.OpenDBHelper();
SlowX.ExamLib.Business.UTB_EXAM_SCORE
bll
=
SlowX.ExamLib.Business.UTB_EXAM_SCORE.instance;
SlowX.ExamLib.Entity.UTB_EXAM_SCORE
entity
=
new SlowX.ExamLib.Entity.UTB_EXAM_SCORE();
ISelectDriver iselect = entity;
iselect.AddISelectItemWithEntityFieldInfo
(
SlowX.Core.Enums.SqlCommonFn.EmSqlCommonFn._Max,
"maxValue",
entity._Score
);
iselect.AddISelectItemWithEntityFieldInfo
(
SlowX.Core.Enums.SqlCommonFn.EmSqlCommonFn._Min,
"minValue",
entity._Score
);
IOrderByDriver iorder = entity;
iorder.AddIOrderByItemWithEntityFieldInfo(entity._ID, SlowX.Core.Enums.OrderBy.EmOrderBy.ASC);
// min和max用到了组合函数查询,禁止order by(会报错)
iorder.IsEnabledOrderBy = false;
DataSet ds = bll.List(entity, xdbHelper);
theResult =
@"<textarea name=""TextBox1"" rows=""2"" cols=""20"" id=""TextBox1"" style=""height:400px;width:99%;"">"
+ bll.BuildSqlList(entity, xdbHelper)
+ "</textarea>";
theResult += "<br /><br />";
theResult += DataSetSlowXFunctions.DataSetToHtmlTable(ds, true);
if (bIsCreate)
xdbHelper.EndDBHelper();
}
catch (Exception err)
{
if (bIsCreate)
xdbHelper.TranDBHelper();
throw err;
}
finally
{
if (bIsCreate)
xdbHelper.FinallyDBHelper();
}
strResult = theResult;
}
#endregion 操作
}
标签:
实现min和max等的函数查询 


上一条:
下一条:
相关评论
发表评论