第 5 章 创建查询和视图

合集下载

(完整版)第5章查询和视图测试题

(完整版)第5章查询和视图测试题

(完整版)第5章查询和视图测试题第3章查询和视图⼩测⼀、选择题(每题2分,共70分,答案写在题号前)1.下列利⽤“项⽬管理器”新建查询的操作中,正确的是()。

DA.打开“项⽬管理器”,单击“代码”选项卡,选定“查询”,单击“新建”按钮B.打开“项⽬管理器”,单击“⽂档”选项卡,选定“查询”,单击“新建”按钮C.打开“项⽬管理器”,单击“数据”选项卡,选定“查询”,单击“运⾏”按钮D.打开“项⽬管理器’,单击“数据”选项卡,选定“查询”,单击“新建”按钮2.打开“查询设计器”的命令是()。

CA.OPEN QUERY B.OPEN VIEW C.CREA TE QUERY D.CREATE VIEW3.在“查询设计器”的“字段”选项卡中设置字段时,如果将“可⽤字段”列表框中的所有字段⼀次移到“选定字段”列表框中,可单击()按钮。

DA.“添加”B.“全部移去” C.“移去”D.“全部添加”4.下列关于视图说法错误的是______。

DA.视图是在数据库表基础上创建的⼀种虚拟表B.视图兼有表和查询的特点C.视图分为本地视图和远程视图D.视图可以脱离数据库使⽤5.在“查询设计器”中,⽤来指定是否有重复记录属性的是()选项卡。

AA.“杂项,,B.“字段”C.“联接”D.“筛选”6. 运⾏查询⽂件cx.qpr的命令是()。

CA)USE cx B)USE cx.qpr C)DO cx.qpr D)DO cx7.“查询设计器”中的“筛选”选项卡的作⽤是()。

CA.增加或删除查询的表B.观察查询⽣成的SQL代码C.指定查询记录的条件D.选择查询结果的字段组织数据8.默认的表间联接类型是()。

AA.内部联接B.左联接 C.右联接 D.完全联接9.在VisualFoxPro中,查询结果以⽂件的形式保存起来,查询⽂件的扩展名为()。

DA..dbfB..sql/doc/9a14638107.html,D..qpr10.“查询设计器”中的“排序依据”选项卡⽤来设置()。

第五章 SQL语言、查询和视图

第五章 SQL语言、查询和视图

——Visual FoxPro 6.0数据库应用基础第二部分数据库操作第五章SQL 语言、查询和视图5.1 SQL语言5.3 视图第四章查询和统计⏹掌握并熟练运用SQL语言⏹掌握视图的概念学习目标数据库应用基础5. 1 SQL语言返回SQL 是结构化查询语言(Structured Query Language ,SQL )的缩写,它是一个通用的,功能极强的关系数据库的标准语言。

它与VFP 的其它表操作命令相独立,即可以独立使用。

如SQL 操作表时,不用USE 命令打开表1. SQL 语言具有以下特点⏹⏹高度非过程化⏹面向集合的操作方式⏹以同一种语法结构提供两种使用方式⏹语言简洁,易学易用2. SQL 语言具有以下功能(1)数据定义功能:用于定义数据表的结构,如创建、修改或删除数据表命令:CREATE 、ALTER 、DROP(2)数据操纵命令:SELECT(3)数据查询功能:用于查询数据命令:INSERT 、UPDATE 、DELETE(4)数据控制功能:用于控制用户对数据表的访问权限等命令:由于VFP 在安全控制方面的缺陷,没提供数据控制命令。

5.1.1数据定义语言SQL 语言使用数据定义语言(Date Definition Language ,简称DDL )实现其数据定义功能,可对数据库用户、基本表、视图、索引进行定义和撤消。

DDL 的命令及功能1.建立表结构命令CREATE TABLE创建数据表时已经打开了一个数据库,则所创建的数据表将自动添加到该数据库中,否则将生成自由表。

【命令】(<字段名1> <字段类型>[<字段宽度> [,小数位]][CHECK <表达式> [ERROR <提示信息>]][PRIMARY KEY/UNIQUE][,<字段名2> …])5.1.1数据定义语言5.1.1数据定义语言【说明】①FREE 指定创建自由表,当数据库没有打开时,不必指定该项.②命令中常见的字段数据类型和字段宽度及小数位数③NULL/NOT NULL 表示是否允许字段值为空值。

第5章结构化查询语言

第5章结构化查询语言

第5章结构化查询语言结构化查询语言(SQL,Structured Query Language)是一种用于管理关系型数据库的标准化语言,也是数据库操作的基础。

SQL可以实现数据库的创建、查询、插入、更新和删除等操作,可以对数据库中的表、视图等进行管理和操作。

SQL语言包括数据定义语言(DDL)、数据操纵语言(DML)、数据查询语言(DQL)和事务控制语言(TCL)等几个方面。

数据定义语言(DDL)用于定义、修改和删除数据库对象,包括创建数据库(CREATEDATABASE)、创建表(CREATETABLE)、修改表结构(ALTERTABLE)和删除表(DROPTABLE)等。

数据操纵语言(DML)用于对数据库中的数据进行操作,包括插入数据(INSERT)、更新数据(UPDATE)和删除数据(DELETE)等。

数据查询语言(DQL)用于从数据库中查询数据,SQL语句的核心部分,可以实现复杂的数据查询和数据过滤。

常见的查询语句包括SELECT、FROM、WHERE、GROUPBY、HAVING、ORDERBY等。

事务控制语言(TCL)用于控制数据库中的事务,包括BEGINTRANSACTION、COMMIT、ROLLBACK等。

通过TCL语句可以确保数据库的操作具有原子性、一致性、隔离性和持久性(ACID特性)。

SQL语言的特点有以下几个方面:1.简单易学:SQL语言的语法相对简单,易于学习和使用。

2.高效可靠:SQL语言是标准化的数据库操作语言,可以高效地对数据库进行管理和操作。

3.跨平台性:SQL语言是一种通用的数据库操作语言,可以在不同的平台和数据库系统上使用。

4.强大灵活:SQL语言可以实现复杂的数据查询和处理,支持多表联合查询、条件查询、分组统计等功能。

SQL语言在现代数据库管理系统中得到了广泛的应用,是数据库开发和管理中非常重要的一部分。

掌握SQL语言可以更好地进行数据库设计、数据管理和数据分析等工作。

第五章 查询、视图与sql

第五章   查询、视图与sql

第五章查询、视图与sql5.1 创建查询1、下列关于查询说法不正确的是(d)。

a)查询是预先定义好的一个sql select b)查询是visual foxpro支持的一种数据库对象c)查询是从指定的表或视图中提取满足条件的记录,可将结果定向输出d)查询设计器具有局限性,仅限于从单个表或视图中提取记录2、查询的数据源可以来自(d)。

a)自由表 b)视图 c)数据库表 d)以上均可3、关于查询的叙述,正确的是(d)。

a)不能根据自由表建立查询 b)只能根据自由表建立查询c)只能根据数据库表建立查询 d)可以根据数据库表和自由表建立查询4、利用命令方式打开查询设计器,应在命令窗口中输入(d)。

a)open view b)open query c)create view d)create query5、在visual foxpro中,如果建立的查询是基于多个表,那么要求这些表之间(b)。

a)必须是独立的 b)必须有联系 c)不一定有联系 d)必须是自由表6、查询设计器中包含的选项卡依次为(a)。

a)字段、连接、筛选、排序依据、分组依据、杂项b)字段、连接、筛选、分组依据、排序依据、杂项c)字段、连接、筛选、排序依据、分组依据、更新条件、杂项d)字段、连接、筛选、分组依据、排序依据、杂项、更新条件7、建立查询前,首先会弹出一个“添加表或视图”的对话框,它相当于sql select语句中的(b)。

a)select b)from c)where d)into8、在查询设计器中,“字段”选项卡相当于sql select语句中的(a)。

a)select 子句部分 b)from 子句部分 c)where 子句部分 d)into 子句部分9、sql select语句中的group by子句对应于查询设计器中的(d)。

a)“筛选”选项卡 b)“连接”选项卡 c)“排序依据”选项卡 d)“分组依据”选项卡10、查询设计器中“排序依据”选项卡对应的sql短语是(b)。

第5章_视图的创建与使用

第5章_视图的创建与使用

5.2.2使用Transact-SQL语句创建视图 .2.2使用Transact-SQL语句创建视图 使用Transact
使用Transact SQL语言中的 使用 Transact-SQL 语言中的 CREATE VIEW 语 Transact语言中的CREATE VIEW语 句创建视图,其语法形式如下: 句创建视图,其语法形式如下: CREATE VIEW [ schema_name . ] view_name [ (column [ ,...n ] ) ] ...n [ WITH ENCRYPTION ] AS select_statement [ WITH CHECK OPTION ] [ ; ]
5.1.2 视图的优点
简化数据操作:视图可以简化用户处理数据的方式。 简化数据操作:视图可以简化用户处理数据的方式。 着重于特定数据: 着重于特定数据:不必要的数据或敏感数据可以不出 现在视图中。 现在视图中。 视图提供了一个简单而有效的安全机制, 视图提供了一个简单而有效的安全机制,可以定制不 同用户对数据的访问权限。 同用户对数据的访问权限。 提供向后兼容性: 提供向后兼容性:视图使用户能够在表的架构更改时 为表创建向后兼容接口。 为表创建向后兼容接口。 自定义数据:视图允许用户以不同方式查看数据。 自定义数据:视图允许用户以不同方式查看数据。 导出和导入数据: 导出和导入数据:可使用视图将数据导出到其他应用 程序。 程序。
CHECK OPTION :强制针对视图执行的所有 数据修改语句都必须符合在 select_statement 中设置的条件。 中设置的条件。 ENCRYPTION:对视图文本进行加密。 ENCRYPTION:对视图文本进行加密。
例2 建立一个只包括教师号、姓名和年龄的 建立一个只包括教师号、 视图TeacherView TeacherView。 视图TeacherView。 CREATE VIEW TeacherView AS SELECT tno,tname,tage FROM teachers

第五章 创建和使用查询

第五章  创建和使用查询

第五章创建和使用查询一.选择题1.下面关于查询的叙述,说法正确的是( D ).A.只有查询可以用来进行筛选、排序、浏览等工作B.数据表或窗体中也可以代替查询执行数据计算C.数据表或窗体中也可以代替查询检索多个表的数据D.利用查询可以轻而易举地执行数据计算,以及检索多个表的数据2.( D )不是查询的功能.A.筛选记录B.整理数据C.操作表D.输入接口3.以下关于筛选和查询的叙述中,说法正确的是( C ).A.在数据较多、较复杂的情况下使用筛选比使用查询的效果好B.查询只从一个表中选择数据,而筛选可以从多个表中获取数据C.通过筛选形成的数据表,可以提供给查询使用D.筛选将删除不符合条件的记录4.Access支持的查询类型有( A ).A.选择查询、交叉表查询、参数查询、SQL查询和操作查询B.基本查询、选择查询、参数查询、SQL查询和操作查询C.多表查询、单表查询、交叉表查询、参数查询和操作查询D.选择查询、统计查询、参数查询、SQL查询和操作查询5.以下不属于操作查询的是( A).A.交叉表查询B.生成表查询C.更新查询D.删除查询6.在查询设计视图中,( B ).A.只能添加数据库表B.可以添加数据库表,也可以添加查询C.只能添加查询D.以上说法都不对7.利用对话框提示用户输入参数的查询过程称为( B ).A.选择查询B.参数查询C.交叉表查询D.SQL查询8.( B )的结果不是动态集合,而是执行指定的操作,例如增加、修改、删除记录等.A.选择查询B.操作查询C.参数查询D.交叉表查询9.在SQL查询中,使用WHERE子句指出的是( B ).A.查询目标B.查询结果C.查询视图D.查询条件10.在SQL查询中,若要取得“学生”数据表中的所有记录和字段,则SQL语句为( B ).A.SELECT 姓名FROM 学生B.SELECT * FROM 学生C.SELECT 姓名FROM 学生 WHILE 学号=02650D.SELECT * FROM 学生 WHILE 学号=0265011.( A )不是生成表查询的使用时机.A.删除数据B.整理旧的数据C.备份重要数据D.当成其他对象的数据来源12.如果在数据库中已有同名的表,( C )查询将覆盖原有的表.A.删除B.追加C.生成表D.更新13.执行( D )查询后,字段的旧值将被新值替换.A.删除B.追加C.生成表D.更新14.参数查询可分为( C ).A.单参数查询B.多参数查询C.单参数查询和多参数查询D.都不是15.单参数查询可以输入( A )组条件.A.1B.2C.3D.416.下列关于准则的说法中,错误的是( D ).A.同行之间为逻辑“与”关系,不同行之间为逻辑“或”关系B.日期/时间类型数据须在两端加#C.Null表示空白无数据的意思,可在任意类型的字段中使用D.数字类型的条件需加上双引号(“”).17.下面表达式中,( A )执行后的结果是在“平均分”字段中显示“语文”、“数学”、“英语”3个字段中分数的平均值(结果取整).A.平均分:([语文]+[数学]+[英语])\3B.平均分:([语文]+[数学]+[英语])/3C.平均分: 语文 + 数学 + 英语 \3D.平均分: 语文 + 数学 + 英语 /318.在表达式中,为了与一般的数值区分,Access将文本型是数据用( C )号括起来.A.*B.#C.“”D.?19.若要查询成绩为70-80分(包括70分,不包括80分)的学生的信息,则查询准则设置正确的是( C )A.>69 OR <80B.Between 70 with 80C.>=70 And <80D.IN(70,79)20.若要在文本型字段执行全文搜索,查找以“Access”开头的字符串,则下列条件表达式正确的是( D ).A.Like“*Access*”B.Like“Access”C.Like“*Access”D.Like“Access*”…………..22.使用查询向导不可以创建(C).A.简单的选择查询B.基于一个表或查询的交叉表查询C.操作查询D.查找重复项查询23.利用向导创建查询对象中的>>按纽的作用是( B ).A.将“可用字段”列表框中选定的字段送到“选定字段”框中B.将“可用字段”列表框中的全部字段送到“选定字段”框中C.将“选定字段”列表框中的全部字段送到“可用字段”框中D.将“选定字段”列表框中的选定字段送到“可用字段”框中24.关于使用查询向导创建查询,叙述错误的是( D ).A.使用查询向导创建查询可以加快查询创建的速度B.创建的过程中,它提示并询问用户相关的条件C.创建的过程中,根据用户输入的条件建立查询D.使用查询向导创建查询的缺点在于创建查询后,不能对已创建的查询进行修改25.( A )是交叉表查询必须搭配的功能.A.总计B.上限值C.参数D.以上都不是26.Access提供的参数查询可在执行时弹出一个对话框以提示用户输入信息,只要将一般查询准则中的数据用( D )替换,并在其中输入提示信息就形成了参数查询.A.( )B.< >C.{ }D.[ ]27.( D )是交叉表查询的必要组件.A.行标题B.列标题C.值D.以上都是28.关于总计,叙述错误的是( A ).A.可以用作各种计算B.作为条件的字段也可以显示在查询结果中C.计算的方式有和、平均、记录数、最大值、最小值等D.任意字段都可以作为组29.关于运行操作查询的方法,错误的是( D ).A.保存关闭该查询后,再双击该查询B.在操作查询的设计视图中,选择“查询”菜单中的“运行”命令,或单击工具栏上的“运行”按纽来运行该查询C.选定“查询”对象,选定该查询后,单击窗口上部的“打开”按纽D.单击工具栏最左端的“视图”按纽,切换到数据表视图30.下列说法中,正确的是( B ).A.创建好查询后,不能更改查询中字段的排列顺序B.对已创建的查询,可以添加或删除其数据来源C.对查询的结果,不能进行排序D.上述说法都不正确31.以下关于查询的叙述,正确的是( C ).A.只能根据数据表创建查询B.可以根据数据表和已建查询创建查询C.只能根据已建查询创建查询D.不能根据已建查询创建查询32.关于查询,说法不正确的是( D ).A.查询可以作为结果,也可以作为来源B.查询可以根据条件从数据表中检索数据,并将其结果存储起来C.可以以查询为基础,来创建表、查询、窗体或报表D.查询是以数据库为基础创建的,不能以其他查询为基础创建33.Access中,查询的视图有3种方式,其中不包括( D ).A.设计视图B.数据表视图C.SQL视图D.普通视图34.关于打开查询的数据表视图的步骤,错误的是( C ).A.在查询对象列表中,双击要打开的查询B.在查询对象列表中,选定要打开的查询,单击“数据库”窗口上部的“打开”按纽C.在查询对象列表中,选定要打开的查询,单击“数据库”窗口上部的“设计”按纽D.在查询对象列表中,选定要打开的查询,在该查询上右击,弹出快捷菜单,选择“打开”命令35.查询的设计视图基本上分为3部分,( B )不是设计视图的组成部分.A.标题及查询类型栏B.页眉页脚C.字段列表区D.设计网格区36.用查询设计视图创建好查询后,可进入该查询的数据表视图观察结果,下列方法不能实现的是( C ).A.保存关闭该查询后,再双击该查询B.选定“表”对象,双击“使用数据表视图创建”快捷方式C.直接单击工具栏中的打开按纽D.单击工具栏最左端的“视图”按纽,切换到数据表视图37.若要用设计视图创建一个查询,查询所有姓“张”的女同学的姓名,性别和总分,则正确的设置查询准则的方法应为( C ).A.在“准则”单元格中输入:姓氏=“张” And 性别=“女”B.在“总分”对应的“准则”单元格中输入:总分;在“性别”对应的“准则”单元格中输入:“女”C. 在“姓名”对应的“准则”单元格中输入:Like“张*”;在“性别”对应的“准则”单元格中输入:“女”D.在“准则”单元格中输入:总分 OR性别=“女”AND姓氏=“张”38.如果要在某数据表中查找某文本型字段的内容以“S”开头,以“L”结尾的所有记录,则应该使用的查询条件是( A ).A.Like“S*L”B.Like“S#L”C.Like“S?L”D.Like“S$L”39.查询条件为“第2个字母为a,第3个字母为c,后面有个st连在一起”的表达式为( C).A.Like“*acst”B.Like“#ac$st”C.Like“?ac*st*”D.Like“?ac*st?”40.关于生成表查询的叙述,错误的是( D ).A.生成表查询是一种操作查询B.生成表查询是从一个或多个表中选出满足一定条件的记录来创建一个新表C.生成表查询将查询结果以表的形式存储D.生成表中的数据是与原表相关的,不是独立的,必须每次都生成以后才能使用41.关于更新查询,说法不正确的是( B ).A.使用更新查询可以将已有的表中满足条件的记录进行更新B.使用更新查询,一次只能对一条记录进行更改C.使用更新查询后就不能再恢复数据了D.使用更新查询效率比在数据表中更新数据效率高42.设某数据库表中有一个“姓名”字段,查找“李”的记录准则是(B).A.Not“李”B.Like“李”C.Left((姓名),1)=“李”D.“李”43.列出所有在1月1日和5月31日之间的日期,正确的表达式是( D ).A.>1.1 <5.31B.>1.1 and <5.31C.>1/1 and <5/31D.>=1/1 and <=5/3144.身份证号码是无重复的,但由于其位数较长,难免产生输入错误.为了查找表中是否有重复值,应该采用的最简单的查找方法是( C ).A.简单查询向导B.交叉表查询向导C.查找重复项查询D.查找匹配项查询45.( C )操作是在查询的某种视图中,打开“查询”菜单,然后单击要切换到的视图名称.A.打开查询的数据表视图B.打开查询的设计视图C.切换查询视图D.使用向导创建查询46.选定要打开的查询,按( A )组合键将以数据表视图方式打开查询.A.Alt+OB.Alt+DC.Alt+CD.Alt+H47.关于查询设计视图的3个部分,叙述错误的是( B ).A.标题及查询类型栏在窗口的最上方的标题栏中,在此处显示查询的标题和查询类型B.字段列表区在标题栏上方,显示打开的查询所应用的其他表C.如果查询中包括多个表或查询的字段列表,则在字段列表之间将会用连线来表示这些表与查询的关系D.在网格区中,用户可以指定查询中所使用和显示的字段48.当操作查询正在运行时,( A )能够中止查询过程的运行.A.按Ctrl+Break 组合键B.按Ctrl+Alt+Del 组合键C.按Alt+Break 组合键D.按Alt+F4 组合键49.关于追加查询,说法不正确的是( B ).A.在追加查询与被追加记录的表中,只有匹配的字段才能被追加B.在追加查询与被追加记录的表中,不论字段是否匹配都将被追加C.在追加查询与被追加记录的表中,不匹配的字段将被忽略D.在追加查询与被追加记录的表中,不匹配的字段不被忽略50.Access的选择查询可以按照指定的准则,从( D )个表中获取数据,并按照所需的排列次序显示.A.1B.2C.8D.多51.“利用查询得到的结果可以建立一个新表”是查询的( B )功能.A.选择字段B.建立新表C.选择记录D.编辑记录52.编辑查询中的字段不包括下列选项中的( B ).A.添加字段B.查询字段C.删除字段D.移动字段53.下列选项中,最常用的查询类型是( A ).A.选择查询B.交叉表查询C.参数查询D.SQL查询54.( A )的结果是一组数据记录,即动态集.A.选择查询B.交叉表查询C.参数查询D.SQL查询55.( B )是利用表中的行和列来统计数据的.A.选择查询B.交叉表查询C.参数查询D.SQL查询56.( C )也可以作为窗体或报表的基础.A.选择查询B.交叉表查询C.参数查询D.SQL查询57.( D )是利用SQL语句来创建的.A.选择查询B.交叉表查询C.参数查询D.SQL查询58.下列选项中,不属于SQL查询的是( C ).A.联合查询B.传递查询C.操作查询D.定义查询59.下列选项中,不属于关系运算符的是( D ).A.=B.>C.<D.=/60.下列选项中,不属于逻辑运算符的是( B ).A.NotB.InC.AndD.Or61.下列选项中,不属于特殊运算符的是( D ).A.InB.LikeC.BetweenD.Int62.在Access中,Between的含义是( B ).A.用于指定一个字段值的列表,列表中的任意一个值都可与查询的字段相匹配B.用于指定一个字段值的范围,指定的范围之间用And连接C.用于指定查找文本字段的字符模式D.用于指定一个字段为空63.下列函数中,表示“返回字符表达式中值的最大值”的函数是( C ).A.SumB.CountC.MaxD.Min64.在下列字符函数中,用来表示“返回字符表达式中的字符..A ).个数..”的是(A.LenB.CountC.TrimD.Sum65.在准则中,字段名必须用( B )括起来.A.小括号B.方括号C.引号D.大括号66.若要查询20天之内参加工作的记录,应选择的工作时间的准则是( B ).A.<Date( )-20B.Between Date( ) And Date( )-20C.<Date( )-21D.>Date( )-2167.空字符串是用( B )括起来的字符串,且中间没有空格.A.大括号B.双引号C.方括号D.#号68.在数据库窗口中,单击“查询”对象,再单击“新建”按纽,可以打开( D )对话框.A.查询向导B.创建查询C.简单查询向导D.新建查询69.使用( D )视图,可以创建带条件的查询.A.查询B.使用向导创建查询C.查询向导D.查询设计70.在查询设计视图的“设计网格”区,包括7行已命名的行,其中不包括( C ).A.字段B.显示C.查询D.准则71.用于指定一个字段值的列表,列表的任意一个值都可以与查询的字段相匹配的特殊运算符是( A ).A.InB.Is NullC.BetweenD.Like72.( B )的SELECT语句不能定义联合查询或交叉表查询.A.参数查询B.子查询C.传递查询D.定义查询73.选择“视图”菜单中的( A )命令,可以对记录进行总计查询.A.合计B.总计C.求和D.统计74.总计查询需在查询设计视图中的( B )行中完成.A.准则B.总计C.或D.显示75.创建交叉表查询时,用户可以指定( A )总计类型的字段.A.1个B.2个C.多个D.无76.要运行查询,可以直接( A )要运行的查询.A.双击B.单击C.连续单击三次D.右击77.总计项中的Group By表示的意义是( A ).A.定义要执行计算的组B.求在表或查询中第一条记录的字段值C.指定不用于分组的字段准则D.创建表达式中包含统计函数的计算字段78.若要统计员工人数,需在“总计”行单元格的下拉列表中选择函数( B ).A.SumB.CountC.VarD.Avg79.( B )是指根据一个或多个表中的一个或多个字段并使用表达式建立新字段.A.总计B.计算字段C.查询D.添加字段80.创建交叉表查询时,行标题最多可以选择( C )字段.A.1个B.2个C.3个D.多个81.如果创建交叉表的数据源来自多个表,可以先建立( B ).A.一个表B.查询C.选择查询D.以上都不对82.如果“列标题”字段的值为小数,Access将在数据表中以( C )取代此字符.A.乱码B.引号C.下划线D.无法识别83.创建( B )查询,就是在字段中指定一个参数,在执行时,用户输入一个参数值.A.参数B.单参数C.多参数D.操作84.如果在一个已建立的查询中创建参数查询,执行“保存”命令后,原查询将( B ).A.保留B.被新建的参数查询所替换C.自动更名D.替换新建的参数查询85.创建单参数查询是时,在“设计网格”区中输入“准则”单元格的内容即为( D ).A.查询字段的字段名B.用户任意指定的内容C.查询的条件D.参数对话框中的提示文本86.下列查询中,( B )查询可以从多个表中提取数据,组合起来生成一个新表永久保存.A.参数B.生成表C.追加D.更新87.关于操作查询,下列说法不正确的是( D ).A.如果用户经常要从几个表中提取数据,最好的方法是使用Access提供的生成表查询B.使用Access提供的删除查询一次可以删除一组同类的记录C.在执行操作查询前,最好单击工具栏上的“视图”按纽,预览即将更改的记录D.在使用操作查询前,不用进行数据备份88.删除查询可以从单个表中删除记录,也可以从多个相互关联的表中删除记录.如果要从多个表中删除相关记录,必须满足3个条件,下列不符合的选项是( D ).A.在“关系”窗口中定义相关表之间的关系B.在“关系”对话框中选中“级联删除相关记录”复选框C.在“关系”对话框中选中“实施参照完整性”复选框D.在“关系”对话框中选中“实体完整性”复选框89.如果只删除指定字段中的数据,可以使用( B )查询将该值改为空值.A.删除B.更新C.生成表D.追加90.关于SQL查询,下列说法不正确的是( D ).A.SQL查询是用户使用SQL语句直接创建的一种查询B.Access的所有查询都可以认为是一个SQL查询C.使用SQL可以修改查询中的准则D.使用SQL不能修改查询中的准则91.设置排序可以将查询结果按一定的顺序排列,以便于查询.如果所有的字段都设置了排序,那么查询结果将先按( A )排序字段进行排序.A.最左边B.最右边C.最中间D.随机92.如果一次添加多个字段,则按住( B )键并单击要添加的字段.A.ShiftB.CtrlC.AltD.Tab93.( B )主要包括添加字段、修改记录和删除记录等.A.选择记录B.编辑记录C.修正记录D.实现计算94.Like属于( C ).A.关系运算符B.标准运算符C.特殊运算符D.逻辑运算符95.假设某数据表中有一个“姓名”字段,查找姓名为“王大”或“刘五”的记录的准则是( D ).A.Not“王大”,“刘五”B.Len([姓名])= “王大”,“刘五”C.Left([姓名])= “王大”,“刘五”D.IN(“王大”,“刘五”)96.若要计算各类职称的教师人数,需要设置“职称”和( C )字段,对记录进行分组统计.A.工作职称B.性别C.姓名D.以上都不是97.返回当前系统日期的函数是( D ).A.Date(date)B.Date(day)C.Day(Date)D.Date( )98.查询“设计网格”中作为“用于确定字段在查询中的运算方法”的行的名称是(D ).A.表B.准则C.字段D.总计99.创建了总计查询后,单击工具栏上的“视图”按纽,将其切换到( A )视图,可以查看总计后的结果.A.数据表B.设计C.SQLD.大纲100.创建交叉表查询时,用户需要指定3种字段,下列选项中不属于这3种字段的是( D ).A.放在数据表最左端的行标题,它把某一字段或相关的数据放入指定的一行中B.放在数据表最上面的列标题,它对每一列指定的字段或表进行统计C.放在数据表行与列交叉位置上的字段D.放在数据表最下面的字段二.填空题1.在Access中,( 操作 )查询的运行一定会导致数据表中数据的变化.2.一般情况下,查询可分为 ( 选择查询 )、(参数查询)、(交叉表查询)、操作查询和SQL查询5种.3.若要获得今天的日期,可使用( Date( ) )函数;若要获得当前的日期及时间,可使用( Now( ) )函数.4.在设置查询的“准则”时,可以直接输入表达式,也可以使用表达式( 生成器 )来帮助创建表达式.5.要确定“库存量”乘以“单价”的平均值是否大于等于¥500且小于等于¥1000,可输入(AVG(库存量*单价) BETWEEN500 AND 1000).6.在交叉表查询中,只能有一个( 列标题 )和值,但(行标题 )可以是一个或多个.7.假设某个表有10条记录,如果要筛选前5条记录,可在查询属性“上限值”中输入( 5 )或( 50% ).8.创建动作查询时,首先要( 保护 )数据,因为动作查询会改变表中数据.9.查询中的计算可以分为( 预定义计算 )和( 自定义计算 ).10.如果需要运行选择或交叉表查询,则只需双击该查询,Access就会自动运行或执行该查询,并在( 数据表 )视图中显示结果.11.如果需要运行操作查询,则先在设计视图中将其打开,对于每个操作查询,会有不同的显示:( 生成表查询 )显示包括在新表中的字段;( 追加查询 )显示添加到另一个表中的记录.12.在“总计”行上,共提供了( 12 )个总计项.13.在查询中,根据查询的数据源数量,将查询分为( 多表查询 )和( 单表查询 ).14.如果查询的结果中还需要显示某些另外的字段的内容,用户可以在查询的( 设计)视图中加入某些查询的字段.15.在总计计算时,要指定某列的平均值,应输入( AVG(列名));要指定某列中值的一半,应输入( [列名]*0.5 ).…………………………………………19.要创建查询时,有些实际需要的内容(字段)在数据源的字段中并不存在,但可以通过在查询中增加( 计算字段 )来完成.20.创建交叉表查询有两种方法,一种是使用简单( 交叉表查询向导 )创建交叉表查询,另一种是使用( 设计视图 )创建交叉表查询.21.在参数查询过程中,用户可以通过设定查询参数的类型来确保用户输入的参数值的正确性.设定的方法是,选择“查询”菜单中的( 参数 )命令来设置.……………23.以“图书馆管理系统”为例,当读者从图书馆借出一本书之后(在“借出书籍”表中新增加一条记录),此时就可以运行( 更新查询 )来将“书籍”表中该书的“已借本数”字段值进行改变.24.按( F11 )键可以切换到“数据库”窗口.25.若要查找小于60或大于100的数,则设定的条件表达式为( <60 or >100 )26.利用( 查找重复项查询 )可以确定在表中是否有重复的记录,或记录在表中是否共享相同的值.27.交叉表查询利用表中的行和列进行数据的统计,在行与列的( 交叉 )处显示表中某个字段的统计值.28.参数查询是利用对话框来提示用户输入( 准则 )的查询.29.操作查询与选择查询的相同之处在于二者都是由用户指定查找记录的条件,但不同之处在于选择查询是检查符合条件的一组记录,而操作查询是( 在一次查询操作中对所有结果进行编辑 )等操作.30.操作查询有( 生成表查询 )、(删除查询)、(更新查询)和(追加查询)4种.31.运算符是组成准则的基本元素,Access提供了( 关系运算符 )、( 逻辑运算符 )和( 特殊运算符 )3种运算符.32.当( Or )连接的表达式有一个为真时,整个表达式为真,否则为假.33.在查询设计视图窗口中的“设计网格”区中,由一些字段列和已命名的行组成,其中已命名的行有( 7 )行.34.在特殊运算符中,( IS Null )用于指定一个字段为空.35.用于表示数值表达式的绝对值的函数是( ABS(数值表达式) ).36.用于返回去掉字符表达式前导空格的字符串的函数是( Ltrim ).37.用于返回字符表达式中的最小值的函数是( Min(字符表达式) ).38.使用文本值作为查询准则时,文本值要用( 半角的双引号 )括起来.39.空值使用( Null )或( 空白)来表示字段的值.40.书写查询准则时,日期值应该用( 半角的#号 )括起来.41.若要查询1987年出生的职员的记录,可使用的准则是( Year([出生日期])=1987 ).42.建立查询的方法有两种,分别是( 使用查询向导 )和( 设计视图 ).43.打开数据库窗口,单击( 查询 )对象,然后双击“使用向导创建查询”选项,可打开“简单查询向导”对话框.44.查询的结果是一组数据记录,即( 动态集 ).45.“查询”设计视图窗口分为上下两部分,上半部分为(字段设计)区,下半部分为“设计网格”.46.使用设计视图时,会打开一个“显示表”对话框,其中包含3个选项卡,分别是(表)、(查询)和(两者都有).47.在表的字段列表中选择字段并放在“设计网格”区的字段行上,选择字段的方法有3种,其中最简单的一种方法是( 双击选中的字段).48.求表或查询中最后一条记录的字段值的总计项是( Last ).49.( 预定义 )计算就是所谓总计的计算,是系统提供的用于对查询中的记录组或全部记录进行计算的计算.50.对于自定义计算,必须直接在“设计网格”区中创建新的( 计算字段 ).。

第五章查询与视图1

第五章查询与视图1

5.1.1.1.3为表建立关系
为表建立关系就是为查询建立多表字段之间的关系,
其方法如下: 1.如图5-3所示,在左侧的下拉菜单中选择建立关系的父
表字(例如“学生基本情况”的学号),在右侧的下拉菜单 中建立关系的子表字段(例如“学生成绩”的学号)。
2.单击左侧的“添加”按钮,将此连接关系加入到下侧 的关系列表框中。
图5.12建立联接条件
图5.13 设置查询结果排列顺序
2.单击“类型”下拉菜单,按连接类型选择一个类 型选项。
3.再依次按前述设置筛选表达式的方法,设置联接 条件。联接条件一旦设定,在查询结果中,凡是满足联 接条件的,在各表中的字段值会如同在一个数据表中的 记录一样出现在查询结果中。 5.1.1.2.5为查询设置排列顺序
图5.6 对记录进行排序
图5.7 对结果中的记录数进行限制
4.单击“下一步”按钮,弹出第五步操作——“完成” 对话框。
①在此对话框中,给出了三个“完成”选项:
②“保存查询”——将新建查询以用户给定的文件 形式存盘,供以后随时调用。
③“保存并运行查询”——将新建查询存盘,并运 行此查询。
④“保存查询并在‘查询设计器中修改’”——将 新建查询存盘,再将其调入“查询设计器”中进行修改。
第5章 查询与视图
5.1 建立查询 5.2 使用视图处理数据
前言
在数据库的应用中,查询是数据处理中不 可缺少的、最常用的。VFP 6.0提供了两 种较好的方法,这就是查询文件和视图 文件。使用“查询设计器”,能方便地生 成一个查询,从而获得用户所需要的数 据。视图能帮助用户从本地或远程数据 源中获取相关数据,而且还可以对这些 数据进行修改并更新,VFP 6.0将自动完 成对源表的更新。

《Access2016数据库教程》第5章SQL查询

《Access2016数据库教程》第5章SQL查询
第5章 SQL查询
SQL(Structure Query Language)结构化查询语言
是一种专门针对数据库操作的计算机语言,是关系数据库管 理系统中的标准语言。 SQL查询是使用SQL语句创建的查询。 查询对象本质上是一条SQL语言编写的命令。
SELECT语句
SELECT语句是对关系数据库的表作选择查询的一个命令, 可以返回指定的数据表中的全部或部分满足条件的记录。
Where Year(出生日期)=2001 Or Year(出生日期)=2003
Where Year(出生日期) In(2001,2003)
4.9 SQL查询
【例5-11】查询“学生表”中年龄为18岁的 学生的学号、姓名、政治面貌。
Select 学号, 姓名, 政治面貌 From 学生表
Where Year(Date())-Year(出生日期)=18
然后使用Group By子句按照课程名称进行分组 再计算每个组内包含成绩的平均值、最大值和最小值。
3.SELECT多表连接查询示例
【例5-19】 查询每个学生的学号、姓名和平均成绩 (保留2位小数),查询结果按“平均成绩”降序排序。
Select 学生表.学号, First(学生表.姓名) As 姓名, Round(Avg(成绩),2) As 平均成绩 From 学生表 Inner Join 选课成绩表 On 学生表.学号= 选课成绩表.学号 Group By 学生表.学号 Order By Round(Avg(成绩),2) Desc
先从Where子句的条件筛选出“男”同学,再按照 院系代码进行分组求出平均分,然后按照平均分降 序排序。
5.2.3 多表连接查询
连接就是将其他表中的列字段添加到本表中。连接运 算主要分成内连接和外连接。 内连接是应用最广泛的连接运算,结果只包含两个表 中连接字段相同的记录行,是等值连接。使用Inner Join就可以将两张表内连接在一起。

SQL Server 2008数据库应用技术第5章 查询与视图

SQL Server 2008数据库应用技术第5章 查询与视图

5.1 基本查询 5.1.1
5.1 基本查询
SELECT子句
5.2 嵌套查询
5.3 连接查询 5.4 创建视图 5.5 视图的管理
SELECT子句的语法结构如下: SELECT [ ALL | DISTINCT ] [ TOP expression [ PERCENT ] [ WITH TIES ] ] <select_list> 各选项的含义如下: (1)ALL指定在结果集中可以包含重复行,ALL 是默认 值;DISTINCT指定在结果集中只能包含唯一行。对于 DISTINCT 关键字来说,Null值是相等的。 (2)TOP expression [ PERCENT ] [ WITH TIES ]指示 只能从查询结果集返回指定的第一组行或指定的百分比 数目的行。 column_ alias是查询结果集内替换列名的可选名。
5.1 基本查询 5.1.2
5.1 基本查询
FROM子句
5.2 嵌套查询
5.3 连接查询 5.4 创建视图 5.5 视图的管理
FROM子句的语法: [ FROM { <table_source> } [ ,...n ] ] 指定在SELECT语句中使用的表、视图、派生表和联接表。 <table_source>的语法格式如下所示。 <table_source> ::= { table_or_view_name [[ AS ] table_alias ][ <tablesample_clause> ] | rowset_function [ [ AS ] table_alias ] [ ( bulk_column_alias [ ,...n ] ) ] | user_defined_function [ [ AS ] table_alias ] [ (column_alias [ ,...n ] ) ] | OPENXML <openxml_clause> | derived_table [ AS ] table_alias [ ( column_alias [ ,...n ] ) ] | <joined_table> }

Access应用技术教程第5章 Access查询及其应用

Access应用技术教程第5章 Access查询及其应用
access数据库应用基础及实训教程上一页下一页退出图56学生情况的查询结果图57王明所选课程的成绩查询结果图58符合两个查询要求的查询结果图59所有学生的平均成绩查询结果access数据库应用基础及实训教程上一页下一页退出51查询概述查询是通过对一个或多个表提取数据创建的主要用来对数据进行检索和加工查询结果可以作为其他数据库对象使用
上一页 下一页 退出
《Access数据库应用基础及实训教程》
(2) 添加数据表。 在【显示表】对话框中,单击建立查询所需的数据表。若 要添加多个数据表,可以按住Ctrl键,同时选择多个数据表, 如图5.12所示。然后单击【添加】按钮,将数据表添加到查询 对话框中。也可以通过双击所需的数据表的方法添加数据表。
上一页 下一页 退出
《Access数据库应用基础及实训教程》

(1) 删除查询:删除查询可以从一个或多个表中删除一组记录 (2) 更新查询:更新查询可以对一个或多个表中的一组记录作 全局的更改,使用更新查询,可以更改已有表中的数据。 (3) 追加查询:追加查询将一个或多个表中的一组记录添加到 一个或多个表的末尾。 (4) 生成表查询:生成表查询可以根据一个或多个表中的全部 或部分数据新建表。生成表查询有助于创建表以导出到其 他Microsoft Access数据库。 5.SQL查询 SQL即结构化查询语言,SQL查询是使用SQL语句创建的 查询。可以使用SQL语句来查询、更新和管理Access数据库。 Access中所有查询都可以认为是一个SQL查询,在其他查询提 供的创建工具中,虽然不用输入SQL语句,但系统最终都将自 动生成SQL查询。
上一页 下一页 退出
《Access数据库应用基础及实训教程》

本章重点分析选择查询和SQL查询,其他查询使用机会较 少,请参考帮助系统学习其操作方法。 5.1.2 查询的功能 如果“隐藏”数据表中不需要显示或打印的列,然后显示 或打印数据表中的数据,这样也能完成类似查询的功能,但是 这样做只能从一个数据表选择所需的数据,而不能保存结果。 而使用查询可以按照不同的方式查看、更改和分析数据。也可 以用查询作为窗体、报表和数据访问页的记录源。查询的主要 功能如下: (1) 选择字段:从数据表选择所需的部分字段。 (2) 选择记录:从数据表中选择符合规定条件的部分记录。 (3) 排序记录:对数据表的数据进行重新排序,按新的顺序浏 览记录。 (4) 修改数据:采用查询可以一次修改、删除或增加一组相关 的记录。 (5) 建立新表:采用生成表查询,可以根据查询结果新建一个 查询结果表。

[文学]第5章 查询_OK

[文学]第5章 查询_OK

1
5.1 查询概述
查询是以表或查询为数据源的再生表。查询的运行结果是一个动态数据集合, 尽管从查询的运行视图上看到的数据集合形式与从数据表视图上看到的数据集合 形式完全一样,尽管在数据表视图中所能进行的各种操作也几乎都能在查询的运 行视图中完成,但无论它们在形式上是多么的相似,其实质是完全不同的。可以 这样来理解,数据表是数据源之所在,而查询是针对数据源的操作命令,相当于 程序。
【例5.10】创建一个查询,统计学生的人数,命名为“学生人数统计”。
2021/8/28
数据库基础与Access应用教程
21
5.3.3 分组总计查询
在查询中,如果需要对记录进行分类统计,可以使用分组统计功能。分组统 计时,只需在“设计”视图中将用于分组字段的“总计”行设置成“分组”即可。 【例5.11】创建一个查询,计算每名学生的平均成绩,并按平均成绩降序依次显 示“姓名”、“平均成绩”两列内容,其中“平均成绩”数据由统计计算得到, 所建查询名为“学生平均成绩”。假设:所用表中无重名。
2021/8/28
数据库基础与Access应用教程
31
5.6 创建操作查询
操作查询分为4种类型:生成表查询,更新查询,删除查询和追加查询。操 作查询的操作对象是“表”,操作结果也反映在“表”里。操作查询运行后,将 不能利用“撤消”命令恢复。
2021/8/28
数据库基础与Access应用教程
32
5.6.1 生成表查询
使用生成表查询可将行复制到新表中,在创建 要使用的数据子集或将表的内容从一个数据库复制 到另一个数据库时,这非常有用。生成表查询类似 于追加查询,但该查询创建要将行复制到其中的新 表。
【例5.16】创建一个查询,运行该查询后生成一 个新表,表名为“不及格学生”,表结构包括“学 号”、“姓名”、“课程名”和“分数”等4个字段, 表内容为不及格的所有学生记录。所建查询命名为 “不及格学生查询”。要求创建此查询后,运行该 查询,并查看运行结果。

查询与视图VFP课件

查询与视图VFP课件
第 五章
查询与视图
一 创建查询(打开查询设计器): 创建查询(打开查询设计器) 1.鼠标操作:“文件” →“新建” →“查询” →“新 1.鼠标操作:“文件” 建文件夹” 2. 命令操作: CREATE QUERY 查询文件名

介绍“查询设计器”
查询设计器下部分的窗口中有几个选项卡,其含义简介如 下: “字段”:对应于SELECT短语,用来选定包含在查询结果 中的字段 图之间的联接关系; “筛选”:对应于WHERE短语,用于指定查询条件; “排序依据”:对应于ORDER BY短语,用来指定排序的 字段和排序方式;
BY和HAVING短语,用于分组; “杂项”:可以指定是否要重复记录(DISTINCT)以及列在 前面的记录(TOP短语)
“分组依据”:对应于GROUP
三 查询的输出
鼠标操作:“查询” →“查询去向”
四 运行查询(先保存再运行)
鼠标操作: 单击“查询”/“运行查询”,或 “!”按钮 。 单击“查询”/“运行查询”,或 命令操作:Do 命令操作:Do 查询文件名 :查询文件名中一定要给出查询文件的扩展名.qpr :查询文件名中一定要给出查询文件的扩展名.qpr :单击“查询”/“查看SQL”,Select-SQL命令将文本窗口 :单击“查询”/“查看SQL”,Select-SQL命令将文本窗口 中显示

创建视图(打开视图设计器)
鼠标操作:打开 “数据库设计器” “文件”/“新建” “文件”/“新建” “视图” 命令操作:CREATE 命令操作:CREATE VIEW 视图文件名
数据库表,创建视图。

第5章结构化查询语言SQLppt课件全

第5章结构化查询语言SQLppt课件全

基本查询
❖ 例1:列出“学生”表中所有同学名单
▪ SELECT * FROM 学生
❖ 例2:列出成绩表中所有学生的学号,去掉重复值。
▪ SELECT DISTINCT 学号 FROM 成绩
SELECT命令中的函数
❖ 例3、列出所有学生的学号,姓名和入学成绩, 其中入学成绩四舍五入保留整数。
▪ SELECT 学号,姓名,ROUND(入学成绩,0) AS “入学成 绩” FROM 学生
WHERE——BETWEEN
❖ WHERE子句中的BETWEEN运算符用来确定范围 。
❖ 格式:
▪ BETWEEN…AND…或NOT BETWEEN…AND ▪ 其中BETWEEN后是范围的下限(低值),AND后是范围的
上限(高值)。
❖ 例1、列出入学成绩在560分到600分之间的学生 名单和成绩。
SQL89 ▪ 1992年公布了SQL的新标准,即SQL-92。 ▪ SQL99——SQL3
SQL语言的特点
❖ SQL是一种结构一体化的语言。它包括了数据定义 、数据查询、数据操纵和数据控制等功能,可以完 成数据库活动中的全部工作。
SQL语言的组成
❖ 数据定义:CREATE、DROP(删除)、
ALTER(修改)
▪ SELECT * FROM 学生 WHERE 专业<>“计算机”
❖ 例4、统计计算机专业入学成绩在600分以上的 学生的人数。
▪ SELECT COUNT(姓名) 人数 FROM 学生 WHERE 入 学成绩>=600 AND 专业=“计算机”
WHERE——IN
❖ WHERE子句中的IN谓词用来确定查询的集合。 ❖ 例1、查询计算机专业和外语专业的学生姓名和

vfp第5章查询视图

vfp第5章查询视图

第5章 查询与视图
视图
⑸保存视图
• “文件” →“保存”
浏览视图
• 在相关数据库设计器中,右击视图,选择“浏览”命令。
第5章 查询与视图
练习3 简单应用:
32.1(先做基1-2)、32.2、43.2(先做基1) 42.2、41.2、66.2、67.2(先做基1)、79.2 22.2、73.1(先做基1-2)
第5章 查询与视图
查询
“查询设计器”工具栏
第5章 查询与视图
查询
⑷运行查询
• 选择“查询→运行查询”命令。 • 单击常用工具栏上的“ ”按钮。
第5章 查询与视图
查询
⑸保存查询
• “文件” →“保存”
查询文件的扩展名是.QPR,
主体是相应的SQL SELECT语句。
第5章 查询与视图
第5章 查询与视图
视图 2. 有关视图的常用命令
⑴新建视图
• CREATE VIEW <视图名> AS <SELECT 语句>
⑵删除视图
• DROP VIEW <视图名> 或 DELETE VIEW <视图名>
第5章 查询与视图
练习4 简单应用:
46.1
第5章 查询与视图
查询与视图的区别
视图与查询在功能上有许多相似之处,但又有各自特点,主要区别如下:

功能不同:视图可以更新字段内容并返回数据源表,而查询文件中的记录数
据不能被修改。

从属不同:视图不是一个独立的文件而从属于某一个数据库。查询是一个独
立的文件,它不从属于任何数据库。

访问范围不同:视图可以访问本地数据源和远程数据源,而查询只能访问本

VFP第五章

VFP第五章

用select-sql命令实现单表查询
1.无条件查询 无条件查询 SELECT <字段名表 FROM <表名 字段名表> 表名> 字段名表 表名 SELECT后用“* SELECT后用“*”表示全部字段,还可以是标准统计 函数,如min 函数,如min ,max ,sum,avg,count等 ,sum,avg,count等 例1: Sele * from STUDENT Sele ‘学号’,‘姓名’,‘奖学金’ from STUDENT sele max(奖学金) as '最高奖学金‘ , min(奖学金) as '最 低奖学金', avg(奖学金) as '平均奖学金' from student 注意标题名称
建立表之间临时关系
Set relation to <关联字段表达式 into <子表 关联字段表达式> 子表> 关联字段表达式 子表
表间临时关系:指当一个表的记录指针移动时,另 表间临时关系 一个表中的记录作相应移动。前者的移动是主动的, 称为父表或主动表,后者是被动的,称为子表或被 动表。 说明:关联字段表达式通常由两表共有的字段构成, 说明: 关联字段表达式 同时又是子表的主控索引,这说明子表须建索引才 能建立临时关系。 SET RELATION TO则表示取消当前工作区与其他 则表示取消当前工作区与其他 工作区的关联
第五章: 第五章:查询与视图
5.1 查询与统计命令 5.2使用查询设计器建立查询 使用查询设计器建立查询 5.3 结构化查询语言 结构化查询语言SQL 5.4 视图
数据筛选命令
1.记录筛选命令: Set filter to <条件> 设置当前表中可以被访问的记录满足的条件。 几次筛选以后,仅最后一次起作用。 几次筛选以后,仅最后一次起作用。 取消记录筛选命令:set filter to 2.设置字段筛选命令: Set fields to <字段名表> | [all | like | except <字段名 通配式> ] 指定当前可以被访问的字段,

第5章 视图及应用

第5章 视图及应用

5.3.1 使用SQL Server Management Studio创建视图
3.在添加表对话框中,选择创建视图所用的表名和视图名,单击“添加” 按钮,将表添加到视图设计器中,在视图设计器窗口的显示区域内显 示出新加表的所有字段。添加完毕后,最后关闭“添加表”对话框, 系统出现“视图设计器”界面窗口,如图5-3所示。
SQL Server 2008数据库原理及应用
5.3.2 使用SQL命令创建视图
【例5-1】在数据库Teaching中,基于表sgrade建立一视图,视图名为 sview_1,要求只能是中文、英文和数学都及格的学生记录的学号, 中文,英文,数学及这三门的平均成绩。
Use Teaching Go Create View sview_1 AS Select xh , zw , yw , sx , (zw+yw+sx)/3 pjcj
SQL Server 2008数据库原理及应用
5.2.2 视图的优点和作用
1.可以使用视图集中数据、简化和定制不同用户对数据库的不同数据要求。 2.使用视图可以屏蔽数据的复杂性,方便用户对数据的操作,用户不必了
解数据库的结构,就可以方便地使用和管理数据,简化数据权限管理和 重新组织数据以便输出到其他应用程序中。 3.视图便于组织数据导出,当需要将多个表中的相关数据导出时,可以将 数据集中到一个视图内,通过视图导出相关数据,从而简化了数据的交 换操作,也大大地简化了用户对数据的操作。 4.在某些情况下,由于表中数据量太大,因此在表的设计时常将表进行水 平或者垂直分割,但表的结构的变化会对应用程序产生不良的影响。 5.视图提供了一个简单而有效的安全机制,能够对据提供安全保护,视 图可以定制显示数据库中的数据信息。 6.视图可以跨服务器组合分区数据,在视图中可以使用UNION集合运算符, 将两个或多个查询结果集组合到一个单一的结果集中,方便用户使用。 视图还可以让不同的用户以不同的方式看到不同或者相同的数据集。

VFP基础教程第五章创建查询和视图VFP教程

VFP基础教程第五章创建查询和视图VFP教程

5.1 创建查询
1. 查询的概念
查询:就是向⼀个数据库发出检索信息的请求,从中提取符合特定条件的记录。

查询⽂件:
即保存实现查询的SELECT-SQL命令的⽂件。

查询⽂件保存时,系统⾃动给出扩展名 .qpr;查询被运⾏后,系统还会⽣成⼀个编译后的查询⽂件,扩展名为 .qpx。

查询结果:
通过运⾏查询⽂件得到的⼀个基于表和视图的动态的数据集合。

查询结果可以⽤不同的形式来保存。

查询中的数据是只读的。

查询的数据源:可以是⼀张或多张相关的⾃由表、数据库表、视图。

2. ⽤查询设计器创建查询
基本步骤:
打开查询设计器→添加创建查询所基于的数据表→定义输出内容→设置联接、筛选、排序、分组条件→选择查询结果的输出形式→保存查询⽂件→运⾏查询。

(1)打开查询设计器
⽅法1:
从⽂件菜单或⼯具栏上单击新建→查询→新建⽂件→进⼊查询设计器
⽅法2:
当所⽤到的数据表已在项⽬中时,从项⽬管理器窗⼝中单击数据→查询→新建→新建查询→进⼊查询设计器
⽅法3:从命令窗⼝中输⼊命令:
create query 查询⽂件名 & 创建新查询
modify query 查询⽂件名 & 修改已存在的查询。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第五章创建查询和视图5.1创建查询1.查询的概念◆查询:就是向一个数据库发出检索信息的请求,从中提取符合特定条件的记录。

◆查询文件:一个查询可以用一条SELECT-SQL语句来完成,查询保存为一个扩展名为. qpr的文件;文件中保存的是实现查询的SELECT-SQL命令,而非查询的结果。

查询被运行后,系统还会生成一个编译后的查询文件,扩展名为. qpx。

◆查询结果:通过运行查询文件得到的一个基于表和视图的动态的数据集合。

查询结果可以用不同的形式来保存。

查询中的数据是只读的。

◆查询的数据来源:数据源的类型可以是一张或多张相关的自由表、数据库表、视图或它们的组合。

2.用查询设计器创建查询举例:查询教师表中基本工资在800元以上(含800元)的教师的工号,姓名和基本工资情况,按系代号升序排序,同一个系的教师按基本工资降序排序。

(1)打开查询设计器方法1:从文件菜单或工具栏上单击新建→查询→新建文件→进入查询设计器方法2:当所用的数据表已在项目中时,从项目管理器窗口中单击数据→查询→新建→新建查询→进入查询设计器方法3:从命令窗口中输入命令:create query查询文件名&&创建新查询modify query查询文件名&&修改已存在的查询(2)定义查询的输出内容(字段)单击字段选项卡→从可用字段列表框中单击所需字段(当输出的按钮,打开表达式生成器,构造出所需的表达式)→单击添加按钮→所需字段自动出现在选定字段框中。

注意:别名的添加:as 别名(3)设置查询的筛选条件筛选条件决定将哪些记录显示出来。

在筛选框中构造筛选条件表达式时,要注意在实例框中输入不同数据类型时的格式:字符串可以不带引号(当与源表中的字段名相同时才用引号);日期型数值要用{ }括起来;逻辑型数据两侧要带.号,如 .T. .F.举例:查询工号开头字母为A的教师。

1)gh like A%2)substr(gh,1,1) = A3)between(substr(gh,1,1) ,A,A)注意大小写的区别(补充函数UPPER(),LOWER())(4)设置查询结果的排序依据排序决定查询输出结果中记录显示的顺序。

单击排序依据→从选定字段框选中字段→选择升序或降序→单击添加。

(5)设置查询结果的分组依据所谓分组,是指对表中记录取重复值的记录进行压缩,形成一个结果记录,目的是为了完成基于该组记录的计算或统计,对每一组记录进行求平均值、求和、统计个数、最大值、最小值等。

几个常用的统计函数举例:查询教师表gzc中各职称教师的人数,基本工资总额和平均工资,并按平均工资降序排序,查询结果输出中必须包含职称,人数,基本工资总额和平均工资四个列。

注意:用于分组的字段不一定是选定输出的字段,但分组字段不能是一个计算字段。

可以用满足条件…来对分组结果进行进一步筛选。

(6)对查询结果的其他设置可以排除查询结果中所有重复的行,并设置结果的记录范围。

All:全部前N个记录:TOP N前N%个记录:N PERCENT(7)选择查询结果的输出类型默认情况下,查询结果将输出在浏览窗口中,且其中的数据是只读的。

设置其他输出类型的方法:打开查询菜单→选择查询去向→在查询去向对话框中选择一种。

一般多选择表或报表。

在SELECT-SQL语句中使用INTO /TO来定向查询结果(8)运行查询在查询设计器打开的状态下,单击常用工具栏上的查询菜单中选择运行查询。

其他情况下,可从项目管理器中选中查询文件并单击运行按钮,或从程序菜单中选择执行命令,或从命令窗口中输入:DO 查询文件名。

3.创建多表查询✓多表查询:当需要获取存储在两张或更多张表或视图中的信息时,需要将这些表或视图添加到查询中来,多张表可以是数据库表,自由表或视图的任意组合。

✓联接与联接条件:(1)联接:指查询或视图的一个数据库操作,通过比较指定字段中的值联接两张或多张表或视图中的记录。

(2)联接类型:内联接:两张表中仅满足条件的记录。

左联接:表中在联接条件左边的所有记录,和表中联接条件右边的且满足联接条件的记录右联接:表中在联接条件右边的所有记录,和表中联接条件左边的且满足联接条件的记录完全联接:表中不论是否满足条件的所有记录。

✓创建多表查询:举例:查询信息管理系中所有成绩总分在480分以上,并且各门课程的成绩不得低于70分的学生,要求在查询结果中包含学生的学号,姓名,总分,平均分,并按照总分从高到低排序。

4. 创建交叉表查询打开待查询的数据表→从文件菜单中单击新建→在新建对话框中选择查询并单击向导→选择交叉表向导→从单张表中选取字段→设计布局→加入总和信息→选择查询结果的保存方式→给出查询文件名并选择保存位置→查询结果显示在查询窗口中。

注意:不是任何表都适宜采用交叉表的形式。

5. 用SELECT-SQL命令创建查询常用的格式:SELECT表名1. 字段名1 [AS标题名1], 表名1. 字段名2 [AS标题名2], …FROM数据库名! 表名1 [inner/left/right/full] join[,数据库名!表名2 ] [inner/left/right/full] join [, 数据库名! 表名3 ]On 表之间的联接条件[TO FILE文本文件名| into table | into cursor 表文件名][into array arrayname][to screen][ WHERE选定条件][GROUP BY分组字段名][HA VING分组中的满足条件][ORDER BY排序字段名 1 [ASC | DESC][, 排序字段名 2[ASC | DESC] ...]]示例:(1)显示JS表中所有教师的工号和姓名(2)显示XS表中学号以“99”开头的学生情况。

(3)显示CJ表中有不及格课程的学生的学号,姓名,不及格课程门数,最高分,最低分。

5.2 创建视图1.视图的特点视图是存在于数据库中的一个虚表,不以独立的文件形式保存;视图中的数据是可以更改的,它不仅具有查询的功能,且可以把更新结果反映到源数据表中;视图打开时,其基表自动打开;但视图关闭时,其基表并不随之自动关闭;关闭一个视图所对应的基表,将不会自动关闭该视图视图的数据源可以是自由表、数据库表或另一个视图。

2.用视图设计器创建本地视图从项目管理器中选择一个数据库→选择本地视图→单击新建按钮→选择新视图→添加所需的数据表→在视图设计器中按照与创建查询相同的步骤(2)~(6)建立视图→设置更新条件→保存视图→给出视图名称→关闭视图设计器(可以先运行一下看看)。

创建参数化视图:在筛选页面的实例框中输入:?参数名→从查询菜单中选择视图参数→在对话框中给出参数名并选择参数类型→确定→保存视图→给出视图名称→关闭视图设计器(可以先运行一下看看)。

例题:1、设计查询(8分)(2005sp01)在TEST项目中已存在查询chaxun,且在SJK中包含一个名为XSCJST的视图,该视图中包含学生的学号(xh),课程代号(kcdh)、课程名(kcm)和成绩(cj)字段,另外在SJK的学生(xs)表含有学生的学号(xh)和所在班级编号(bjbh)字段。

按如下要求修改查询:基于xs表和XSCJST视图表查询每个班课程代号为”01”的考试情况。

要求输出字段为:bjbh,kcdh,kcm,最高分,平均分,不及格人数,查询结果按bjbh 的升序排序(注:成绩低于60分为不及格)。

2、设计查询(8分)(2005sp02)在TEST项目中已存在查询chaxun,且在SJK中学生(xs)表包含学号(xh)、姓名(xm)、性别(xb)、班级编号(bjbh)、系代号(xdh)和专业代号(zydh)字段,专业(zy)表含有专业代号(zydh)和专业名称(zymc)字段,按如下要求修改查询:基于xs表和zy表查询“01”年级每个专业女生所占比例。

要求输出字段为:zydh,zymc,年级,女生人数和女生所占比例,查询结果按女生所占比例从高到低排序(假定bjbh字段值的前二位表示年级)。

3、设计查询(8分)(2005sp03)TEST项目中已经存在查询chaxun,且在SJK中包含一个名为JSST的视图。

该视图包括教师工号(gh)姓名(xm)、出生日期(csrq)、职称(zc)和系代号(xdh)字段;在SJK的系名(XIM)表含有系代号(xdh)和系名称(ximing)字段。

按如下要求修改查询:基于JSST视图和XIM表查询每个系职称为“教授”的人数、平均年龄,要求输出字段包括:xdh、ximing、zc、人数、平均年龄、查询结果按人数从高到低排序。

4、设计查询(8分)(2005sp04)TEST项目中已经存在查询chaxun,且在SJK中包含一个名为JSST的视图。

该视图包括教师工号(gh)、姓名(xm)、出生日期(csrq)、职称(zc)和系代号(xdh)字段,在SJK的工资(GZ)表含有教师工号(gh)、基本工资(jbgz)和综合津贴(zhjt)字段。

按如下要求修改查询:基于JSST视图和GZ表查询每个系各类职称基本工资、岗位津贴和综合津贴三项之和的最大值、最小值、平均值、要求输出字段包括:xdh、zc,最大值、最小值、平均值,查询结果按xdh从高到低排序。

5、设计查询(8分)(2005sp05)在TEST项目中已存在查询chaxun,且在SJK中学生(xs)表包含学号(xh)、姓名(xm)、性别(xb)、班级编号(bjbh)、系代号(xdh)和专业代号(zydh)字段,专业(zy)表含有专业代号(zydh)和专业名称()zymc)字段,按如下要求修改查询:基于xs表和zy表查询“01”年级每个专业女生所占比例。

要求输出字段为:zydh,zymc,年级,女生人数和女生所占比例,查询结果按女生所占比例从高到低排序(假定bjbh字段值的前二位表示年级)。

6关于SELECT-SQL的考察(1).在某教学管理数据库中,有一个成绩表(cj.dbf),表结构及其记录如下表所述。

对于下列SELECT-SQL语句,其查询结果含有3条记录。

SELECT xh, COUNT (*) AS 选课门数FROM cj GROUP BY xh (2).在某教学管理数据库中有一个学生表(XS.DBF ),其表结构及其所含有的记录数据如表1 所示。

对于下列SELECT-SQL 语句,其查询结果含有____3___ 条记录。

SELECT * FROM xs WHERE SUBSTR(xh,5,2)='01'(3).已知学生(XS )表中含学号(xh )、性别(xb )、专业(zy )字段。

下列SQL命令用来查询每个专业的男、女生人数。

SELECT zy, SUM(IIF(xb='男',1, ________)) AS 男生人数,;SUM(IIF(xb="女",1, ________)) AS 女生人数;FROM xs;GROUP BY 1(4).已知成绩(CJ )表中含学号(xh )、课程代号(kcdh )和成绩(cj )字段,成绩表中存有记录数据如表2 所示。

相关文档
最新文档