SQL Artisan多表查询和统计

上门开户

上门开户

2016-01-29 16:00

SQL Artisan多表查询和统计,SQL Artisan多表查询和统计
编写基于几个表的关联查询和统计的确是件烦琐的事情,由于基于字符的描述很多信息难以抽取出来共用,当其他地方需要这种情况的时候又必须重写。为了避免这情况SQL Artisan引用了视图对象,通过视图对象描述数据查询的信息;视图对象有一个最大的好处就是继承,可以从一个已经有的对象(实体对象或视图对象)继承下来扩展新的查询功能描述。实际应用中你可以建立一个基础统计视图对象,然后根据情况派生出具体的统计对象(如:根据不同信息分组,显示那些字段信息等).

下面是一些简单例程代码:

      订单销售金额统计基础视图对象

    /// <summary

    /// 建立一个简单的订单销售金额统计类

    /// </summary

    [TableMap("", TableType.View)]

    public class OrderStat:HFSoft.Data.ITableView

    {

        #region ITableView 成员

        public virtual Table GetTable()

        {

            // TODO:  添加OrderV.GetTable 实现

            return DBMapping.Orders.INNER(DBMapping.Employees, DBMapping.Employees.EmployeeID)& DBMapping.Orders.INNER(DBMapping.OrderDetails, DBMapping.Orders.OrderID)& DBMapping.OrderDetails.INNER(DBMapping.Products, DBMapping.Products.ProductID);

        }

        private Double mTotalize;

        [StatColumn("Quantity*[Order Details].UnitPrice*(1-Discount)", StatType.Sum)]

        public Double Totalize

        {

            get

            {

                return mTotalize;

            }

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

            set

            {

                mTotalize = value;

            }

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

        }

        #endregion

}

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

按雇员分组统计情况继承实现

    /// <summary

    /// 按雇员进行分组统计

    /// </summary

    [TableMap("", TableType.View)]

    public class EmployeeTotal:OrderStat

    {

        private int mEmployeeID;

        [ViewColumn("Employees.EmployeeID")]

        public int EmployeeID

        {

            get

            {

                return mEmployeeID;

            }

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

            set

            {

                mEmployeeID = value;

            }

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

        }

        private str

展开更多 50%)
分享

猜你喜欢

SQL Artisan多表查询和统计

SQLServer
SQL Artisan多表查询和统计

sql 多表连接查询

编程语言 网络编程
sql 多表连接查询

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

用SQL进行多表查询

编程语言 网络编程
用SQL进行多表查询

Microsoft SQL Server 2000 中查询优化器使用的统计(2)

编程语言 网络编程
Microsoft SQL Server 2000 中查询优化器使用的统计(2)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Sql连接查询

SQLServer
Sql连接查询

Sql联合查询

SQLServer
Sql联合查询

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

SQL Server死锁的分析

SQL Server死锁的分析

深入浅出SQL之左连接、右连接和全连接

深入浅出SQL之左连接、右连接和全连接
下拉加载更多内容 ↓