




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、虐瀚在数据库应用系统中, 数据查询始终是应用的基础和核心。 从数据库中获取用户所需的业务数据,按照用户预定义的格式,给用户进行浏览、 分析、统计、打印及转换,还可作进一步的处理。 不可能穷举所有的用户查询,当然也不能要求普通用户去直接拼写 供一个工具让用户可以自己进行查询的设计和定制。第17章数据利用和挖掘的常用方式就是 通常以业务报表的形式提供 ,由于查询需求的多样性,SQL语句,因此需要提查询引擎查询引擎是面向高级实施人员和专业开发人员的查询建模工具,计和个性化的报表展现。查询引擎由两个功能点组成:查询引擎管理和查询引擎权限控制。可以全面支持复杂查询的设查询引擎基本概念及案例基本概念数据表
2、、临时表、报表:数据表是数据库里物理存在的表;报表是符合用户要求的一个界面展现,它通常是一个二维的数据表格;有时我们仅仅通过数据表无法直接查出报表要求的数据结果,这时可能需要通过数据表查询建立一些具有过渡性质的中间表,然后再通过这些中间表查出最终结果,这种起到过渡作用的表称为临时表。数据字典:数据字典提供数据库对象的逻辑属性,有助于提高查询定义的直观性和易用性。 内连接与外连接:这是多表查询中的不同连接方式,其中外连接主要包括左连接(right out join )两种。left out join )和右连接左连接取出左侧关系中所有与右侧关系的任一元组都不匹配的元组,自右侧关系的属性,再把产生
3、的元组加到内连接的结果上。右连接与左连接完全对称, “表A左连接表B”与“表B右连接表A”的效果是一样的。用空值填充所有来以下述的表A和表B为例,它们以字段K作为键值进行不同连接后会得到不同结果集。KV1011002200330表AKV2011000330005500表B内连接(select , , , from A inner join B on =) 的结果是:011001100033003300左连接(select , , from A left join B on =)的结果是:0110011000220033003300右连接(select , , from A right join
4、 B on =)的结果是:01100110003300330005500普通查询(简单查询)与复合查询:复合查询和普通查询的关系如图所示。两者的查询结果都可以看成是临时表,其差别在于: 普通查询是基于数据表定义查询,复合查询是基于已经定义好的查询来定义查询。参数定义: 通常用于查询定义中 SQL向导设计工具中的 where条件表达式中,存在字符型和数值型 (浏 览时可直接录入)、字符枚举和数值枚举型参数 (浏览时可下拉框录入),参照型参数(浏览 时可参照录入)等穿透: 当明细表与汇总表一起出现时,某种内在联系可从汇总数据联查明细数据,称穿透或钻取分级汇总:按分级列(具有一定级次的编码规则),对
5、汇总列(数值型)进行各级汇总,并在各级末尾添加分级汇总列。交叉: 按一定交叉规则进行旋转交叉或投影交叉1 )旋转交叉:行列不固定存在一定交叉规则(指定交叉行、交叉列、交叉值字段)之后,报表全动态地实现数据交叉。常用多层列表头辅助体现交叉的维度,且交叉规则能够在运行态重新设定。 适用于无法预先确定交叉后列结构的报表; 2)投影类交叉:行列固定;每行、每列均对应一个筛选条件,而单元格第i 行第 j 列的内容根据SQL语句"select统计函数(字段)from表where (行条件i) and (列条件j)”查出,且是 个唯一的值交叉砝码: 交叉设置界面中的交叉砝码的作用是, 描述交叉值字
6、段对应的列出现在交叉列展开后的哪个 层次上。退化:在投影交叉查询中的筛选条件中设置为退化的项; 叉时, 其结果集中需显示的备用行或备用列。 出现在行头上,也不出现在列头上。用于在运行态 (浏览态) 进行再次投影交 在第一次投影交叉查询结果中, 退化项则既不行间占比:行间占比: 指先按分组排序列进行分组排序, 者为单元格与其所在列总合计值的比然后计算单元格与其所在分组小计值的比,列间占比: 列间占比:指比例 =本列数值 / 多列总和合并查询:报表部分区域由查询结果填充、部分区域由手工填入,此类报表可通过“合并查询”模 式完成。典型报表案例:报表是由数据和格式组成的整体。报表中的取数规则离不开 S
7、ELECT询语句查询模型中的核心功能“ SQL向导设计”实际是 SELECT查询语句的可视化工具。 如汇总表中的SELECTS询语句:公司名称,科目,sum(借方发生额),sum(贷方发生额)SELECT年度,公司编码,ON 凭证表 . 凭证主键 =凭证分录表 . 凭证主键ON 凭证表 . 公司编码 =凭证分录表 . 公司主键FROM 凭证表INNER JOIN 凭证分录表INNER JOIN 公司目录表INNER JOIN科目表 ON凭证分录表.科目主键=科目表.科目主键WHERE 公司 =corpGRO UP BY年度,公司编码,公司名称,科目 ORDERBY年度,公司编码,公司名称ASC
8、以下“ SQL向导设计”工具(如下图)中:“连接表”页签对应 FROM.部分“连接条件”页签对应 INNER JOIN.ON部分“连接字段” 页签对应 SELECT 部分筛选条件”页签对应WHERE部分“排序字段”页签对应ORDERBY系统自动对不含聚合函数的字段作GRO UPBY处理。.1 ',i図4 帕B& Si需JC口覺咖 4)亡临 4 L (姚 二圏 團莖 割g Hk:f甘去煙浊件jfe择工丘'瞇黃存I *|搭険交量曰生r &_h&p h r c r- o e c u 亡匕 Dec 厂 J- J 3 3 3 s z ? V -t 韦中 一1一1-
9、 T-心嘲陛進富5XSXSZ刼目貼 朋詔昂i登戸=忙Al何.言签闵頁村逵呂gl_TDU-|i-:(g _dtbilbd_dccsuh|b(1_c Dry衷ft五g 金.正景Me *3公司冃诗KS卑番茶去啊手増It耒刖紳 I上宾1TK璋定3 7115-11-00瞬月如(一)汇总表:年度公司编码公司名称科目借方发生 额贷方发生 额200101A1001100200101A2001100200202B1002200200202B2002200200303C1003700200303C2003700用sql语言表示:SELECT年度,公司编码,公司名称,科目,sum(借方发生额),sum(贷方发生额)
10、FROM凭证表,凭证分录表,公司目录表,科目表INNER IN .ON公司名称,科目 公司名称GRO UP BY年度,公司编码, ORDERBY年度,公司编码,(可通过“ SQL向导设计”功能完成。)(二)明细表:年度公司编码公司名称凭证号制单日期科目借方发生贷方发生额额200101A12001/9/11001100200101A12001/9/12001100200202B22002/8/11002200200202B22002/8/12002200200303C32003/8/11003300200303C32003/8/12003300200303C42003/10/1100340020
11、0303C42003/10/12003400用sql语言表示:SELECT年度,公司编码,公司名称,科目,借方发生额,贷方发生额FROM凭证表,凭证分录表,公司目录表,科目表INNER I N.ONORDERBY年度,公司编码,公司名称(可通过“ SQL向导设计”完成。)(三)旋转交叉:如对上述的明细表进行旋转交叉交叉行:交叉列:交叉值:(1)交叉列为1列时凭证号、科目年度借方发生额交叉砝码(借方发生额):在列头的第2层 复合维度:为丫时、年度凭证号、科目200120022003借方发生额借方发生额借方发生额110011002100220031003300120012200232003借方发借
12、方发借方发年度生额生额生额200120022003凭证号、科目110011002100220031003300120012200232003交叉行:凭证号、科目交叉列:年度交叉值:借方发生额交叉砝码(借方发生额):在列头的第1层(2)交叉列为多列时 凭证号、科目 年度、公司名称 借方发生额、贷方发生额交叉行:交叉列:交叉值:交叉砝码(借方发生额、贷方发生额 ):在列头的第3层 列复合维度:为丫时凭证号、科年度、公司名称200120022003ABC借方发生额贷方发生额借方发生额贷方发生额借方发生额贷方发生额11001100120011002100220022002200310033003200
13、330041003400400I 2003交叉行:凭证号、科目交叉列:年度、公司名称交叉值:借方发生额、贷方发生额交叉砝码(借方发生额、贷方发生额):在列头的第3层列复合维度:为 N时年度、公司名称凭证号、科目200120022003ABCABCABC借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额借 方 发 生 额贷 方 发 生 额110011001200
14、1100210022002200220031003300320033004100340042003400(可通过“ SQL向导设计”完成。)(四)投影交叉:部门姓名性别财务开发部Sbq男财务开发部sy男供应链开发部ghi女财务开发部fii女5生别部门男女财务开发部21供应链开发部2用SQL语言表示:select count(性别)from 人事视图 where部门='财务开发部and性别='男'(可通过“ SQL向导设计”完成。)(1)对旋转交叉结果穿透:年度公司编码公司名称凭证号制单日期科目借方发生 额贷方发生 额200101A12001/9/110011002001
15、01A12001/9/12001100200202B22002/8/11002200200202B22002/8/12002200200303C32003/8/11003300200303C32003/8/12003300200303C42003/10/11003400200303C42003/10/12003400200403C52004/4/11003500按单列(科目=1003)穿透结果:年度公司编码公司名称凭证号制单日期科目借方发生 额贷方发生 额200303C320038/11003300200303C42003M0/11003400200403C52004/411003500按多列
16、(科目=1003和年度=2003)穿透结果:年度公司编码公司名称凭证号制单日期科目借方发生 额贷方发生 额200303C320038/11003300200303C42003M0/11003400(可通过“ SQL向导设计”及“穿透规则”中的查询间穿透来共同完成。)(2)对投影交叉结果穿透:部门男女财务开发部21供应链开发部2按单元格穿透:部门姓名性别财务开发部Sbq男财务开发部sy男年度公司编码公司名称凭证号制单日期科目借方发生 额借方占比200101A12001/9/11001100200101A12001/9/12001100200202B22002/8/11002200200202B2
17、2002/8/12002200200303C320038/11003300200303C320038/12003400(可通过“ SQL向导设计”及“穿透规则”中的投影交叉穿透功能来共同完成。)(六)行间占比年度公司编码公司名称凭证号制单日期科目借方发生 额200101A12001/9/11001100200101A12001/9/12001100小计200200202B22002/8/11002200200202B22002/8/12002200小计400200303C320038/11003300200303C320038/12003400小计700合计1300如按公司编码对借方发生额进行
18、汇总:行间占比结果:年度凭证号公司编 码制单日 期公司名 称借方借方占比1借方占比发生(借方发生2 (借方发额额/分组小生额/合计)计)科目200101A12001/9/110011000. 50. 0769200101A12001/9/120011000. 50. 0769200202B22002/8/110022000. 50. 1538200202B22002/8/120022000. 50. 1538200303C32003/8/110033000. 42860. 2308200303C32003/8/120034000. 57140. 3077(可通过“ SQL向导设计”及“数据加工
19、”中内置的分组统计、行间占比算法来共同完成。)(七)列向分支统计型corpn amesexA公司韩千穗女A公司智银圣男A公司金晓光女A公司王丽娜女B公司金贤成男B公司姜希灿女通过 SELECT corp, (CASE sex WHE男"THEN 1 ELSE 0 END) AS male, (CASE sex WHEN 女'THEN 1 ELSE 0 END) AS femaleFROM T将获得如下结果:corpmalefemaleA公司01A公司10A公司01A公司01B公司10B公司01SELECT corp, SUM(CASE sex WHE男" THEN
20、1 ELSE 0 END) AS male, SUM(CASE sex WHEN女'THEN 1 ELSE 0 END) AS female FROM TEM_CASEGRO UP BY corp则将查出以下结果:corpmalefemaleA公司13B公司11(可通过“ SQL向导设计”功能来完成。)(八)合并查询(半录入半嵌入型)部门汉族满族家古族1、直属部门情况财务部人数人数人数行政部人数人数人数2、开发部门情况HR产品开发部人数人数人数HR产品市场部人数人数人数(可通过“合并查询”功能来完成,上述表格中的部分区域通过手工录入,部分区域通过嵌入查询完成)查询引擎管理操作方法在主菜
21、单中单击客户化 -自定义查询-查询管理中心的子菜单查询引擎管理 系统将弹出“查询引擎”的浏览窗口。查询引擎管理包括查询/界面对象树管理、查询模型设计、界面模型设计等主要功能。查询/界面对象树管理图17-6所示的查询引擎主界面左侧为一棵对象树,树上挂有代表查询对象和界面对象的节文件夹管理:增加/删除/修改:在根节点或目录节点之下可以增加目录,删除目录时会删除 目录下的所有对象。目录的可修改属性为目录名称。同一目录下的目录和对象 不能重名。复制/剪切/粘贴:在查询子树或格式子树下,可以将一个目录及其下属内容从 某位置拷贝或移动到另一个位置。对象管理:增加/删除/修改:在根节点或目录节点之下可以增加
22、查询对象或者界面对象。 前者的属性为编码、名称和数据源,后者的属性为编码和名称,其中编码一经 使用,就不再建议作任何修改,因为此编码可能被其它对象引用。复制/剪切/粘贴:在查询或格式子树下,可以将一个对象从某位置拷贝或移动到另一个位置。导入/导出:选中某个对象,可将其导出为 XML文件,该文件可被导入到另外 的目录下。此功能可用于对象的跨数据库复制。 在导出查询对象或界面对象时, 需将其引用的查询对象一并导出才有意义。选中某目录时,导入功能可用。切换定义数据源:(当查询引擎不支持多数据源,只支持单数据源时此功能置灰)查询引擎支持多数据源运作机制模式一NC业务在数据源 A下运行,查询引擎的定义放
23、在数据源B,通过引擎定义的查询可以到数据源C去执行。图17-7切换定义数据源定义数据源(上面说的B)是指查询引擎自身的系统表所在的数据源,执行切换功能后,主界面上的对象树的内容会作相应改变。14 AiPtntt牛r订»iT=iE5修改执行数据源:-Mi-FISTI 士fT图17-8切换定义数据源效果当需修改执行数据源时,选择左侧查询设计下的目录,按“辅助设置”一 源”,选择数据源下拉框数据进行保存。> “批量修改执行数据也輕嗚構"互乌性二严生奉里小 庙新活助功詔-业磊向导0 5询袂计G 口 QEim 買P G TEST込TT出出已功ft枚佩5询討盘引E3存审弄表51
24、口匡与拒表划iLj总>1|报表 物a抠表+亡助责需朮申谑胡表 3厲资竝茸圭谊閔+ 3鬥采的耒箱3戸用肖苦报表D辭:耐71 <3 QEh3 口 iJPBD3 a功e眾岷遼询稻云4J二!寻夷孫未410 败报击 却L対淆1抿击H上唏常盖苜戌式诗神UPED2£j"FIFIFI-HI LFIFI LFIF" -F.月时总正旧卅境爭呈(刨耳也翱丫2|版;邑;烁正); rin-riri-inrim-iriBi-i or f r - -'-ii t ini- Bini lof-ni fjltsoIhl121rftjE取洎查询模型设计查询模型设计包括参数定义、
25、SQL设计(含交叉定义)、SQL整理、数据加工、穿透规则等 几部分,其中穿透规则描述的是本查询与外部查询的通信关系,其余部分都用于描述查询内部的属性。查询设计态和运行态的基本流程如下图所示:X I1 <图17-9查询模型流程(1)参数控制参数是查询模型中代表动态信息的元素。在SQL设计、SQL整理和数据加工中,均可以根据参数的不同,对查询的定义和执行进行调整。如果创建某个参数的作用 是根据其取值的不同改变WHERE条件的设置,则这类参数成为过滤型参数,这是最常用的参数功能。参数定义:用于定义本查询内部引用的所有参数,其中参数名要保证互不相同。 数据类型包括自由录入、枚举、参照几种,当类型
26、为枚举时,枚举项为用“”分隔的枚举值,或者是一个单字段的查询SQL当类型为参照时,枚举项为基础参照名,或者是用尖括号括起的自定义参照的类名。E彙17 SfrrIJ HP1ffin图17-10参数定义SQL整理或数据加工参数引用:参数可在SQL设计的筛选条件页签引用,也可在的嵌入代码中利用编码向导引用。斑s -比E习r:用户辰rib*VTE _niair图17-11参数引用图17-12参数设置参数设置:运行态要求用户首先对参数进行设置,这与查询模板的使用类似。当 报表引用了多个查询时,参数将通过多页签设置,每个页签代表一个查询。SQL设计SQL设计包括向导设计和手工设计两种方式。无论采用哪种,在
27、完成设计时系统均会对SQL进行合法性校验,如未通过校验则不能保存设计。作为向导设计的一个 重要组成环节,有必要先介绍一下数据字典。数据字典前面已经提到,查询对象的属性中包含数据源信息,在设计查询的时候需要加载相应数据源的数据字典。NC的数据库以DDC作为数据字典,但非NC的数据库则没有DDCo系统会根据执行数据源是NC、IUFO或其它数据库三种情况分别加载不同的数据字典,而且这一机制已经预留了扩展的接口,从而 可以面向各种类型的数据库执行取数功能。关于数据字典的生成有多种做法,可以参考DDC的专门文档。查询引擎中用到的数据字典都以一棵对象树的形式存在,树节点包括目录、表、视图、字 段、外键等信
28、息,通过双击对象节点可以协助录入SQL语句的成分。向导设计向导设计参考典型 SQL的构成规则,充分利用数据字典的功能,引导用户一 步步完成SQL的设计,因此是推荐使用的方式。它由以下六个环节构成,其 中最后一步“交叉属性”超岀了 SQL的涵义,在后面的章节中进行专门介绍。表定义:即SQL语句中的from部分,可以利用数据字典选择库里的数 据表,也可以选择查询对象,从而实现查询的集成(基于查询结果定义 新的查询)。I而乔"iiM鼻E息孵 ia疊t 甲宿 ssn那7 -a三豪JUMTV)一# J ? 图17-13表定义H 適 ftffrtMiW慈rsTTTir冃砂(0Z如碗£燈
29、询ttm* 二 tJ ' r JCWflW* 円如划 J食lipTJ 1ij勺耳"中5+ * J ti F irWHK+ 二 IP+tdu± J I PH-fcR了 "W尸Wi詁:* ¥ :亠I J SP+t4H冃 JIT£MI=in*兰K存咅雯± s in£ia I n 初 I y I图17-14数据表与临时表连接定义:即SQL语句中的join部分(表间连接关系),支持单键连接 和多键连接两种模式。±e图17-15连接定义字段定义:即 SQL语句中的select部分,可以定义任何 SQLSERVE语法 支
30、持的查询表达式,但要保证字段别名不重复且使用规范名称(以字母 开头、由字母、数字、下划线组成的字符串,且不能使用SQL保留字)。如果使用了聚集函数,则由系统自动完成group by部分。iC £94# "艸 W命 xmk SHllI103三討MW2TmiW:it-. 1 SllL-k1 r上上一*WVA图17-16字段定义于以i畀苦-用户占 rji_rKTH-ns*iT豪;>J1£«阿BTUI-JJC艸*曲哝=e * II n畀爭*1-如atni_图17-16表达式生成器字段表达式定义:下面作些特殊函数的用法说明。如其它函数:CASE WHEN的用
31、法如某查询定义中,当科目表中的字段“余额方向”为1时,需将查询中的字段“余额方向名称"(如字段别名为 name)值显示为"借”,否则为” 贷”。则字段表达式为 case whe n =1the n'借else '贷'end 操作方法:双击“其它函数”中的CASE WHEN则在字段表达式中生成: case when then else end,然后在字段表达式的编辑框中继续手工编辑成完整表达式:case when =1 then '借else '贷'end,然后按 “确定”。UR sam- mTO# rmlfiMXivHiiHi
32、*«t"«.p3s'J空附rw*i >1帀EBE :rtnLine, "fln mi'】一i. "冲疋kCKLail - X *b4-.愛丽4 涯Ma"tH耳-im iprai»X rt H4d»-F d1! h WtW1-rt 耳 7fl<'Bt U*11-±-*mtw图 17-17 CASE WHEN 的用法 1fey工mr®皐*FW 刖 liM叶 I j.L-.'I、,丿I*rENsr*N*4B*4=pnIcbK*r i h4丄*Sk3G&quo
33、t;>JA:-=.Win#图 17-17 CASE WHEN的用法 2筛选条件定义:即 SQL语句中的where部分,可定义确定条件和待定条 件,后者可以通过双击右操作数编辑框弹岀参数界面并作引用。&需屏库ng SOpTw甲禅 HViUT* MFU.KhhbI - .-J三Z.IT円_ KftTff 即二WE图17-18筛选条件定义排序字段定义:图17-17排序字段定义即 SQL语句中的order by部分。数据交叉属性:交叉是一种常用的多维数据分析手段,详见后文。手工设计手工设计是支持自由 SQL的方式,由于复杂 SQL在解析、适配、执行等方面 的不稳定性较大,因此不推荐普通用
34、户使用。手工设计包括:SQL录入:用户可以在数据字典的辅助下录入SQL语句,要求遵循SQLSERVE语 法。«色Mjr义ihm.Ij卄u<r_i tF K-_ljEk r_-nw -Her*:蟻弼 l血I点 ETm"4J tSPlfcfI flTHB图17-20 SQL录入字段显示名设置:系统通过对用户录入SQL的解析获得字段信息,并向用户提供输入字段显示名的机会,显示名的默认值与查询字段的物理名 相同。|F5Tft的:H 些_4j rhZirtBvTJSELJfaETfi:*图17-21字段显示名设置(3)数据交叉(投影)交叉和第二类(旋转)交叉两种类型。两类交叉的
35、差别在数据交叉包括第一类于:第一类交叉属于查询行为,适用于行列设置都已在表样中固定的报表,其交 叉结果严格遵循表样格式,其行列结构不会受查询数据的影响;第二类交叉属于 数据加工行为,其交叉后的行列结构在查询岀数据之前不可预料,多用于完全真 实地对原始数据进行动态处理。第一类(投影)交叉假定有一个查询 SQL,其查询结果是单行单列的汇总值,另外还有两组WHERE条件的序列,分别为横向序列(WhereX1、WhereX2、 WhereXn)和纵向序列(WhereY1、WhereY?、WhereYn),则数据矩阵 A (aj)对应的 结果集成为投影交叉,aij是WhereXi和WhereYj同时作用
36、在上述SQL上获得的结果。SQL 为:bd invbasdoc on比如,某查询用于查岀公司和部门下的人数,原始leftselect , from ic_ge neral_bleft outer joinouter joinbd_in vcl on = grou p by,”查岀的结果如下图所示:阿卅型;cih4lAelBlOO1阿产姙u.orXaLcoi:-aOtpirpni产'l連QID4DI产占muOJdS4J'秤3Z. ?a 11 aa *ffl |图17-22原始数据(无交叉)现在把查询字段中只保留实收数一项,然后进行如下的投影交叉设置:I玉聽I MH咅州ifiFli
37、慕店£艮耳住工交艮 asejE ;胡垃4码a*?1 4-UbaJ4f-UtUplMhbkiPLK'1?«4rrt.a尸氏ihi_in冲运斗7嚴星甘ffttuRtlab4 ! riifl. prwcT.TtlfJ'a*图17-23投影交叉设置FC则交叉后的结果如下图所示:严bEfiaiE丢ffl图17-24投影交叉结果第二类(旋转)交叉旋转交叉用于显示表中某几个字段(称为交叉值字段)的统计值,并将其分 组放置在查询结果中,一组列在数据表的左侧(称为交叉行字段),一组列 (称为交叉列字段)旋转到数据表的上部成为列表头,统计值则放在对应的 交叉单元。关于旋转交叉的
38、更细节的内容,请参考交叉表使用说明。对于投影交叉中的例子,假定进行如下的旋转交叉设置(其中交叉砝码表示 交叉值字段的位置,它只能岀现在交叉行字段或交叉列字段当中):fla若B*匚貝HM*图17-25旋转交叉设置 则交叉后的结果如下图所示:5上i1住咖Ir 屮 Qi耳J电触13U 1JOOljeo 1XJU 1300 1图17-26旋转交叉结果(4)代码嵌入代码嵌入包括 SQL整理、数据加工、数据穿透等三种查询对象使用方式。SQL整理SQL整理是指在SQL查询之前,对SQL所作的调整。通常会根据参数的不同, 对查询的表、字段或条件等信息进行增补或修改。SQL整理的具体内容由内嵌的代码片段描述(这
39、与后面将介绍的数据加工和穿透规则一样),代码的 录入可通过编码向导协助完成,尽管如此,这几种功能仍然推荐由高级实施 人员或程序员使用。StTLELf. P4I -¥15415+ . -G 丄. fluLlJ ? i: :. J 1 oEU 】1|宅 O :虫'贰 轴If Ltr B辽 bZ fw Y3丫" 1 11 aoKSSri恥*FIE ifiTBM 苗lAinon D7" le-i-EKpu-tsiioa "t迪削匡AA沖Sf:和4口最*广廿31?曲匚.活U芒询卡A3El i+lFlJfelL » -"dBcnl*Wil
40、K'Tlg? Erz=rM.虚刖立1 HA怦i<-i.EKFrt5iaaa .d+ccuK if:和4口*;itwSffTa2ei 14-I.Fl-illL ki -但祕HKfl孑圾 csai-aity衣兀on If丹 Ttah74bl4-Tn "H.dRfKi*'* I*胡aF2LJgK £«i«tFljraLCiJL,inii曉O 沾4廿4*11hM*4*r It|-J图17-27 SQL整理代码在图示的SQL整理代码中,当参数“ detail”取值为“ Y”时,引擎会在本查 询对象已完成的 SQL设计基础上多查询一张表(bd_
41、defdoc)和两个字段(档案编码、档案名称),从而获得更明细的查询信息;如果该参数取值不为 “ Y',则仍然按照SQL设计的定义去执行查询。以下简单介绍几种 SQL整理算法的编码向导使用方法:追加查询表:参数为待追加的表物理名。R U 4血蘇 I軍*1图17-28追加表向导追加连接条件:与追加表同时使用,参数为连接模式、追加表物理名和 追加的表间连接条件。I版号fia*JUKI JMDKjhfg»>»图17-29追加连接条件向导追加查询字段:与追加表同时使用,参数为追加字段的表达式、显示名 和别名。 |«if*伽虚式" ilu:皿纹辛匸:
42、乌.KF|pri-3 屈图17-30追加字段向导按参数追加条件:根据参数取值的不同追加不同的筛选条件,参数为参 数名和筛选字段。1芳代也向呃* 1沁里基»虽下ftFilouM 1图17-31按参数追加条件向导数据加工数据加工是指某个(或某几个)查询结果集在经过一系列加工算法的变换后 得到另一个结果集,而后者通常是业务上要求的展现结果。相关的算法又称 为加工滤镜,滤镜通常支持输入多个结果集和输岀一个结果集,并可以嵌套 使用。数据加工与SQL整理的区别在于:前者在SQL查询之后进行,作用的对象是结果集;后者在查询之前进行,作用的对象是SQL定义。在数据加工的编码向导中,提供了多种实用加工
43、滤镜。图示的数据加工代码把主键分别为“ user1 ”和“ user2”的两个结果集按照 pk_corp字段为键进行 了左外连接,并在连接结果中保留了 “ user_ name1 ”、 “p k_corp ”、“ user name2 ”三歹列。 AOlXTtBr I 月Hi SEP AM e 赣 sat i珂s SSESSO iDC-' zIrCiJJim - SlriiL. 也:i- luh hhhdvju 屮 mU I Qi * ErUA ;. Elj jbqZJ eCiTiLPbj hiJ bl u-a Ehl ixL irr. nl' r.'. “r _ -p
44、H - I ilh M I Ih占Aim为岳忙熬曲超nth7泄曲ml*血 rftrim+UTr 和知Sii.rf'npajireh-c-! jrr Firt- Wwci.dfiMH 弘山沁丨 I H |lL«lPVH-jdu4d£pDbt aHJoiJv m Jk* dj p rwR Dhh-ilJpLrd'rDn Atr nrrr ;.tF wU刨如阮怙1 H"吋严III I岳I. JiZ - I|4j> a.-*.£-¥ ? Ltl aC*W Siz Joe I | I -342 _JiM iJ' E<.
45、' CUT EUfl iZ?"ru ri'j- PTi iba - xirbLJlii niv in Jk fli1姬3”加1占1 啊Mb: nrj- abu<tn i W汕Atr *4Jj图17-32数据加工代码以下简单介绍几种数据加工算法的编码向导使用方法:由查询获得结果集:根据查询ID和参数获得查询结果集,如果没有参数或不需要设置参数,则参数变量可取null。¥BJ»TgilTO 百B亨g fmu 丁ihDiJI图17-33获得结果集向导公式设置:参数为公式列名、返回值数据类型和公式,如果公式列名不存在 则新增一列,否则将该列的内容更新
46、为公式返回值。2d年JCtJUbI'h匸.54_时£ 4iitm _口'由宅' bd_<->JTc 卜 4«p" LI BI «II"1斗I 9I *1-11I ?J 1II0#I -1 .II/ 1I oj (II1 1<I >1 GII“ 1gjuas d-JVdn4Ep«irX±l1w*11I=r如片»r5CTi wrisnarst fl SA 创E dli砖:迪图17-34公式编辑图17-35公式定义结果集连接:指定两个结果集的连接字段、连接方式和连接后的保留字段, 得到连接后的结果集。善ft码向9琴尊耐1紀MG云jiAHT j
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CCUA 038-2024版本典藏资源智慧展陈手势交互系统技术要求
- 高中多普勒效应课件
- 高中友谊开头课件
- GIL行业市场前景及投资研究报告:输电产品放量契机
- 高一必修三红楼梦课件
- 房屋买卖合同物业管理与入住指导服务协议
- 特色小镇建设用地租赁与综合运营管理协议
- 离婚协议男方放弃抚养费支付及子女抚养权协议书
- 农业科技创新预案
- 快乐拼图:拼出快乐的每一天
- 高压电气设备试验的基本知识
- 整理我的小书桌(课件)小学劳动二年级通用版
- 激光束传输与变换-第九讲课件
- 时空大数据讲义课件
- 2023年上海国企中远海运(上海)有限公司招聘笔试题库含答案解析
- 管工安全技术操作规程
- 曲臂车高空作业车施工方案
- 武汉某厂房设备基础施工方案
- 第4部分 质量经理-质量管理体系章节题-43题附有答案
- DL-T 736-2021 农村电网剩余电流动作保护器安装运行规程
- GB/T 3836.1-2021爆炸性环境第1部分:设备通用要求
评论
0/150
提交评论