欢迎来到天天文库
浏览记录
ID:10512581
大小:108.00 KB
页数:16页
时间:2018-07-07
《as400中文培训教程之db(7)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、当在KEYFLD参数中规定的字段总数超过2000字节长。当指定动态连接,并且OPTIMIZE的参数定*MINWAIT。当指定用连接逻辑文件指定动态连接,且JDFTVAL不符合动态连接类型。当指定逻辑文件,并且逻辑文件的格式引用了多个物理文件。当指定了一个SQL视图,系统用临时文件保存视图的结果。当指定了ALWCPYDTA(*OPTIMIZE)参数,使用临时结果会改进查询性能。当发生动态连接(JDFTVAL(*NO)),OPNQRYF会重排文件,并把带有最小记录数的文件和最大记录数的文件连接。为避免OPNQRYF重排文件,规定了JORDER(*FILE),它强制用在OPNQRYF命令中规定的顺序
2、连接文件。2.2.3.27分类排序表的性能考虑2.2.3.27.1组合、连接和选择当使用已存在的索引,优化能保证选择、连接和组合的属性符合已存在的索引中的键字属性。同时与查询相关的分类排序表必须符合存在的索引有关的排序表(分类排序表或交替分配排序表),如果顺序表不匹配,就不能用已存在的索引。然而,如果与查询有关的分类排序表是一个唯一权顺序表(包括*HEY),就可能有另外的优化。即使没有规定带有任何有下列功能的组合字段、选择或连接的顺序表,也要进行优化:*EQ*NE*CT%WLDCRD%VALUES。这样做的优点是优化可以自由使用键字匹配字段且访问路径如下之一的任何已存在访问路径:没有包含顺序表
3、;包含一个唯一权顺序表(这个表不一定符合与查询有关的唯一权顺序表)。2.2.3.27.2排序为了排序字段,优化不能自由地使用已存在路径,除非优化做一个符合要求的排序,否则查询与索引的排序表必须匹配。当使用一个顺序时,在排序时转换,而不管优化对符合选择条件的已存在路径的自由使用权。2.2.3.27.3范例下面例子中,假定对JOB字段已存三条路径,这三条路径用下面三个排序表:1.SRTSEQ(*HEX)2.SRTSEQ(*LANGIDUNQ)LANGID(ENU)3.SRTSEQ(*LANGIDSHR)LANGID(ENU)例1不用顺序表的EQ选择。OPNQRYFFILE(STAFF)QRYSLT
4、('JOB*EQ"MGR"')SRTSEQ(*HEX)优化可以使用索引1(*HEX)或2(*LANGEDUNQ)例2用唯一权顺序表的EQ选择。OPNQRYFFILE(STAFF)QRYSLT('JOB*EQ"MGR"')SRTSEQ(*LANGIDUNQ)LANGID(ENU)优化可用索引1(*HEX)或2(*LANGIDUNQ)例3用共享权顺序表的EQ选择。OPNQRYFFILE(STAFF)QRYSLT('JOB*EQ"MGR"')SRTSEQ(*LANGIDSHR)LANGID(ENU)优化只能用索引3(*LANGIDSHR)例1用唯一权的GT选择。OPNQRYFFILE(STAFF)Q
5、RYSLT('JOB*GT"MGR"')SRTSEQ(*LANGIDUNQ)LANGID(ENU)优化只能用索引2(*LANGIDUNQ)例2用唯一权顺序表的连接选择。OPNQRYFFILE((STAFF1)(STAFF2))JFLD(1/JOB2/JOB*EQ)SRTSEQ(*LANGIDUNQ)LANGID(ENU)优化可用1(*HEX)或2(*LANGIDUNQ)例3用共享权顺序表连接选择。OPNQRYFFILE((STAFF1)(STAFF2))JFLD(1/JOB2/JOB*EQ)SRTSEQ(*LANGIDSHR)LANGID(ENU)优化只能用索引3(*LANGIDSHR)例4不
6、用顺序表的排序OPNQRYFFILE(STAFF)QRYSLT('JOB*EQ"MGR"')SRTSEQ(*HEX)KEYFLD(JOB)优化只能用索引1(*HEX)例5用唯一权顺序的排序OPNQRYFFILE(STAFF)QRYSLT('JOB*EQ"MGR"')SRTSEQ(*LANGIDUNQ)LANGID(ENU)KEYFLD(JOB)优化仅用索引2(*LANGIDUNQ)例6用共享权顺序表排序OPNQRYFFILE(STAFF)QRYSLT('JOB*EQ"MGR"')SRTSEQ(*LANGIDSHR)LANGID(ENU)KEYFLD(JOB)优化只能用索引3(*LANGIDSH
7、R)例7用ALWCPYDTA和唯一权顺序表排序OPNQRYFFILE(STAFF)QRYSLT('JOB*EQ"MGR"')SRTSEQ(*LANGIDUNQ)LANGID(ENU)KEYFLD(JOB)ALWCPYDTA(*OPTIMIZE)优化可以用索引1(*HEX)或2(*LANGIDUNQ)做选择。用*LANGIDUNQ顺序表做排序。例8不用顺序表组合OPNQRYFFILE(STAFF)G
此文档下载收益归作者所有