nc查询引擎自定义报表

nc查询引擎自定义报表

ID:20896766

大小:397.50 KB

页数:20页

时间:2018-10-17

nc查询引擎自定义报表_第1页
nc查询引擎自定义报表_第2页
nc查询引擎自定义报表_第3页
nc查询引擎自定义报表_第4页
nc查询引擎自定义报表_第5页
资源描述:

《nc查询引擎自定义报表》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、自定义报表使用技巧总结主讲人:范雪林田彩慧KEY1SQL的基本使用2视图的基本使用3使用视图的原因4自定义报表的制作方法5案例分析2SQL的使用基本语法:select*fromXXXunionallleftouterjoin(rightouterjoin/fulljoin)XXXonXXX=XXXEXAMPLESELECTa.au_fname,a.au_lname,p.pub_nameFROMauthorsaLEFTOUTERJOINpublisherspONa.city=p.cityORDERBYp.pub_n

2、ameASC,a.au_lnameASC,a.au_fnameASCdescSQL常用函数DATEDIFF(datepart,startdate,enddate)GETDATE()例:SELECTDATEDIFF(day,pubdate,getdate())ASno_of_daysFROMtitlesSQL常用函数CASE例:SELECTCategory=CASEtypeWHEN'popular_comp'THEN'PopularComputing'WHEN'mod_cook'THEN'ModernCooking

3、‘WHEN'business'THEN'Business'WHEN'psychology'THEN'Psychology'WHEN'trad_cook'THEN'TraditionalCooking‘ELSE'Notyetcategorized'END,CAST(titleASvarchar(25))AS'ShortenedTitle',priceASPriceFROMtitlesWHEREpriceISNOTNULL去掉不需要的字段避免使用SELECT*FROM语句,要使用SELECTF1,F2FROM语句,去

4、掉不需要的字段。SQL常用函数CAST(expressionASdata_type)CONVERT(data_type[(length)],expression[,style])SQL使用中应注意的1.避免显式或隐含的类型转换,如在WHERE子句中Numeric型和Int型的列的比较。2.Unionall和union的区别3神秘的256问题3视图的使用1视图使用的好处自定义报表实际就是ms-sql的外层执行程序,是将sql执行的结果以表格的形式表现出来。经尝试发现U8系列自定义报表可以直接执行sql语句。这样做好

5、处很多,既可以使得自定义报表可以和sql中所使用的库完全无缝连接,也可以跨库查询,甚至跨实例查询,极大的增强了自定义报表的扩展能力视图的基本制作方法视图实战冷丰销售发票视图4.自定义报表的使用方式1.自定义报表的原理:自定义报表首先对SQL语句进行解析,生成一张临时表,然后通过对临时表进行查询4.自定义报表的使用方式2.系统自带自定义报表的缺陷:a.不便于修改b.字段不全c.不能模块化自定义报表实战山孚日水05表其他的经验总结对于进行时间筛选的表应注意数据范围。自定义报表条件查询实际是将临时表中的内容做where

6、查询,因此当涉及大量起初期末以及每一时点值得时候,必须将有关该表前后的所有内容全部查出,然后在做查询。当然,这样做的数据量会很大,当服务器速度慢或者关联表过多已近表间逻辑较为复杂的情况下会造成报表反映迟钝的问题。其他经验总结不要将大量的脚本写入自定义报表中。当自定义报表中sql脚本最外层有大量函数或者内部有大量数据类型间转换的情况下,自定义报表的查询条件经常设置后会发生错误。因此最好将sql脚本生成视图,然后再在自定义报表中直接调用视图。这样做条件查询一般不会发生错误。其他经验总结脚本书写过程中应多用视图。由于m

7、s-sql自身的原因,在多表union或者unionall的情况下,会发生数据冗余,造成报表数据错误。用多视图关联的方法,可以很好解决此种矛盾。此外,由于脚本要经常修改,当采用将所有脚本写入同一脚本中后会发生修改困难的情况,往往一处修改要造成整表修改。而采用视图间多视图关联的方法可以使程序模块化,当发生某一处数据错误的时候,仅仅需要修改该模块就可以,方便修改。当然由于多视图间关联系统会自动进行脚本重新编译,因而效率会略有降低,但是一般情况下都可忍受。其他经验总结企业中经常有一些不需要适时数据、使用频率低但重要程度

8、高的汇总表(例如投入产出表),当数据量的时仅仅执行脚本就需要数个小时,并且影响整个erp系统的执行效率。此时就不应该在自定义报表中直接运行该脚本,而应当将该脚本写成存储过程格式,然后再ms-sql中直接设置作业及作业时间,使得该脚本在系统空闲时间计算,并将该表示算结果写入数据库表中,然后用自定义报表直接读取该表数据,速度奇快。当然,这样做也存在一定问题,就是不能实时得到精

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。