第17章在数据库应用系统中,数据查询始终是应用的基础和核心
数据利用和挖掘的常用方式就是从数据库中获取用户所需的业务数据,按照用户预定义的格式,通常以业务报表的形式提供给用户进行浏览、分析、统计、打印及转换,还可作进一步的处理
由于查询需求的多样性,不可能穷举所有的用户查询,当然也不能要求普通用户去直接拼写SQL语句,因此需要提供一个工具让用户可以自己进行查询的设计和定制
查询引擎查询引擎是面向高级实施人员和专业开发人员的查询建模工具,可以全面支持复杂查询的设计和个性化的报表展现
查询引擎由两个功能点组成:查询引擎管理和查询引擎权限控制
查询引擎基本概念及案例基本概念数据表、临时表、报表:数据表是数据库里物理存在的表;报表是符合用户要求的一个界面展现,它通常是一个二维的数据表格;有时我们仅仅通过数据表无法直接查出报表要求的数据结果,这时可能需要通过数据表查询建立一些具有过渡性质的中间表,然后再通过这些中间表查出最终结果,这种起到过渡作用的表称为临时表
数据字典:数据字典提供数据库对象的逻辑属性,有助于提高查询定义的直观性和易用性
内连接与外连接:这是多表查询中的不同连接方式,其中外连接主要包括左连接(leftoutjoin)和右连接(rightoutjoin)两种
左连接取出左侧关系中所有与右侧关系的任一元组都不匹配的元组,用空值填充所有来自右侧关系的属性,再把产生的元组加到内连接的结果上
右连接与左连接完全对称,“表A左连接表B”与“表B右连接表A”的效果是一样的
以下述的表A和表B为例,它们以字段K作为键值进行不同连接后会得到不同结果集
内连接(select,,,fromAinnerjoinBon=)的结果是:011001100033003300左连接(select,,fromAleftjoinBon=)的结果是:0110011000220033003300右连接(se