首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在做本题前首先确认在基础操作中已经正确地建立了order_detail表,在简单应用中已经成功地将记录追加到order_detail表。 当order_detail表中的“单价”修改后,应该根据该表的“单价”和“数量”字段修改order_list表
在做本题前首先确认在基础操作中已经正确地建立了order_detail表,在简单应用中已经成功地将记录追加到order_detail表。 当order_detail表中的“单价”修改后,应该根据该表的“单价”和“数量”字段修改order_list表
admin
2015-08-20
57
问题
在做本题前首先确认在基础操作中已经正确地建立了order_detail表,在简单应用中已经成功地将记录追加到order_detail表。
当order_detail表中的“单价”修改后,应该根据该表的“单价”和“数量”字段修改order_list表的“总金额”字段,现在有部分order_list记录的“总金额”字段值不正确,请编写程序挑出这些记录,并将这些记录存放到一个名为od.mod的表中(与order_list表结构相同,自己建立),然后根据order_detail表的“单价”和“数量”字段修改od_mod表的“总金额”字段(注意一个od_mod记录可能对应几条order_detail记录),最后od_mod表的结果要求按“总金额”升序排序,编写的程序最后保存为progl.prg。
选项
答案
步骤1:在命令窗口执行命令:
MODIFY COMMAND progl
,打开程序文件编辑器输入如下程序代码: SELECT订单号,SUM(单价*数量)AS总金额; FROM order_detail; GROUP BY订单号; INTO CURSOR arrtable SELECT order_liSt.*; FROM order_liSt , arrtable; WHERE order list.订单号=arrtable. 订单号AND order_list.总金额<> arrtable.总金额; INTO TABLE Od_mod USE Od_mod DO WHILE NOT EOF() SELECT arrtable.总金额FROM arrtable ; WHERE arrtable.订单号=od_mod.订单号; INTO ARRAY arr REPLACE总金额WITH arr SKIP ENDDO CLOSE ALL SELECT*FROM od_mod ORDER BY总金额; INTO CURSOR arrtable1 SELECT * FROM arrtablel INTO TABLE Od_mod 步骤2:保存文件修改,在命令窗口执行命令:DO progl.prg,执行程序文件。
解析
本题主要考查SQL分组计算查询;DO WHILE循环结构。本基本解题思路可按以下步骤进行:
首先,根据order_detail表的“单价”和“数量”数据,利用分组计算查询求出每组订单的“总金额”,将结果保存到一个临时表中。
然后,通过对order_1iSt表和临时表的联接查询,找出order_list表中“总金额”字段与临时表中“总金额”不相同的记录,并将order_list表中这些“总金额”不相同的记录输出到od_mod表中。
接着利用DO WHILE循环语句对od_mod表中的每条记录进行处理。通过SQL查询语句从临时表中先获得与od_mod表当前所指记录“订单号”相同的“总金额”字段值,将该值保存到数组中,再通过REPLACE命令修改od_mod表当前记录的值,每处理完一条记录,记录指针便指向下一条记录,一直到处理完od_mod表中的所有记录。
最后将od_mod表的记录按“总金额”排序,由于查询结果不能覆盖正在作为查询数据源的表,因此,可以通过一个临时表过渡,保存排序的表记录,再通过临时表将排好序的记录保存到原数据表中。
转载请注明原文地址:https://kaotiyun.com/show/eWEp777K
本试题收录于:
二级VF题库NCRE全国计算机二级分类
0
二级VF
NCRE全国计算机二级
相关试题推荐
在关系模型中,表A中的某属性集是某表B的键,则称该属性集为A的______。
在应用程序生成器的“数据”选项卡中可以______。
在文件管理系统中,______。
利用SQL语句的定义功能,建立一个职工表文件,其中为职工号建立主索引,工资的默认值为1200,语句格式为:CREATETABLE职工(仓库号C(5)【】,职工号C(5),工资IDEFAULT1200)
嵌套查询命令中的IN,相当于
对于图书管理数据库,查询所藏图书中,有两种及两种以上的图书出版社所出版图书的最高单价和平均单价。下面SQL语句的横线部分,命令正确的是SELECT出版单位,MAX(单价),AVG(单价)FROM图书;图书(总编号C(6),
下列关于报表带区及其作用的叙述,错误的是
根据表达式值的类型,表达式可分为数值表达式、字符表达式、日期时间表达式、逻辑表达式;而大多数【】表达式是带比较运算符的关系表达式。
下列关于索引文件的叙述中,说法正确的是
在VisualFoxPro中,如果希望跳出SCAN…ENDSCAN循环体,执行ENDSCAN后面的语句,应使用
随机试题
下列哪种行为违反了放射防护的最优化
患者,男,62岁,呼吸困难,心绞痛,晕厥,查体胸骨右缘第2肋间可闻及收缩期喷射样杂音,向颈部传导,镇患者心脏听诊还可闻及
A.肾小球滤过率B.生物转化C.肠肝循环D.表观分布容积E.药物脂溶性有效地利用体内物质
基底核通常包括
下列哪项是开放性气胸的主要病理生理变化
甲公司属于增值税一般纳税企业,以人民币作为记账本位币,采用交易发生日的即期汇率将外币金额折算为记账本位币,年末一次计算汇兑差额。2017年甲公司发生如下业务:资料一:2017年1月1日,以外币存款1000万美元购入按年付息的美元债券,面值为1000
甲公司因结算需要,向w银行申请开立一般存款账户。w银行为该账户办理付款业务的起始时间是()。(2011年)
保持伤口深处不受细菌感染是困难的,即使是高效抗菌素也不能杀死生活在伤口深处的细菌。但是,许多医生却用诸如蔗糖这样的甜性物质包扎伤口而除去了伤口深处的细菌。以下哪项如果为真,最有助于解释用蔗糖杀死伤口深处细菌的原因?
Weareprofoundlyignorantabouttheoriginsoflanguageandhavetocontentourselveswithmoreorlessplausiblespeculations.
A、Theonethathassimilarpronunciationwiththeirmothertongue.B、Theonethathassimilarspellingwiththeirmothertongue.
最新回复
(
0
)