首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

动态设置sql语句实现定制报表解决思路

2012-01-10 
动态设置sql语句实现定制报表准备做一个动态的可定制的报表查询工具。一个表内储存定制的信息,字段名,及表

动态设置sql语句实现定制报表
准备做一个动态的可定制的报表查询工具。
一个表内储存定制的信息,字段名,及表名,及是否最大值,是否group等信息,格式如下:

CREATE   TABLE   [ItemSet]   (
[itemno]   [int]   NOT   NULL   ,
[itemname]   [varchar]   (50)   COLLATE   Chinese_PRC_CI_AS   NULL   ,
[itemtablename]   [varchar]   (50)   COLLATE   Chinese_PRC_CI_AS   NULL   ,
[itemfieldname]   [varchar]   (50)   COLLATE   Chinese_PRC_CI_AS   NULL   ,
[isGrouped]   [int]   NULL   ,--是否group
[isMaxed]   [int]   NULL   ,--是否取最大
[isIncreased]   [int]   NULL     --是否取差值
)   ON   [PRIMARY]
GO

或者说格式如下:
CREATE   TABLE   [ItemSet]   (
[itemno]   [int]   NOT   NULL   ,
[itemname]   [varchar]   (50)   COLLATE   Chinese_PRC_CI_AS   NULL   ,
[itemtablename]   [varchar]   (50)   COLLATE   Chinese_PRC_CI_AS   NULL   ,
[itemfieldname]   [varchar]   (50)   COLLATE   Chinese_PRC_CI_AS   NULL   ,
[itemattrib]   [smallint]   NULL           --0,1,2,3来表示字段的属性,是否取最大值,是否group等。  
)   ON   [PRIMARY]
GO
大家提下意见哪种更合理一点。


还有,怎样处理这样的表可以取得想要的查询结果呢???
似乎一句sql已经处理不了了,请大家帮帮忙,提提意见,谢谢

[解决办法]
用视图或存储过程实现
[解决办法]
不知楼主想要什么结果
个人觉得第一种比较合理
[解决办法]
用存储过程拔
[解决办法]
个人感觉
第一种比较合理,直观. 如果想节省点空间,用2也是可以的,不过没必要

想要什么结果就不知道也
[解决办法]
USE pubs
GO
SELECT MAX(ytd_sales)
FROM titles
GO

Here is the result set:

-----------
22246

(1 row(s) affected)

差值就不知道了,视图,存储过程,函数,都可以吧

热点排行