首先将order_detail表全部内容复制到od_bak表,然后完成如下操作: (1)将od_bak表中的订单号字段值只保留最后一个字母(用REPLACE命令或SQLUPDATE命令完成修改)。 (2)用SQL语句对od bak表编写完成如下功能的程序:

admin2013-03-18  24

问题 首先将order_detail表全部内容复制到od_bak表,然后完成如下操作:
(1)将od_bak表中的订单号字段值只保留最后一个字母(用REPLACE命令或SQLUPDATE命令完成修改)。
(2)用SQL语句对od bak表编写完成如下功能的程序:
    ①把“订单号”相同并且“器件号”相同的订单合并为一条记录,“单价”取最低价,“数量”取合计。
    ②结果先按新的“订单号”升序排序,再按“器件号”升序排序。
    ③最终记录的处理结果保存在od new表中,表中的字段由“订单号”、“器件号”、“器件名”、“单价”和“数量”构成。
(3)最后将程序保存为prog1.prg,并执行该程序。

选项

答案步骤1:在命令窗口执行命令:SELECT * FROMorder_detail INTO TABLE od_bak,将order_detail表的全部内容复制到od_bak表中。 步骤2:在命令窗口执行命令:UPDATE od_bak SET订单号=RIGHT(ALLTRIM(订单号),1),将od_bak表中的“订单号”字段值只保留最后一个字母。 步骤3:在命令窗口执行命令:MODIFY COMMAND PROG1,新建程序并打开程序编辑器。 步骤4:在程序编辑器中输入如下程序代码: SELECT 订单号,器件号,器件名; MIN(单价) AS 单价,SUM(数量) AS 数量; FROM OD_BAK; GROUP BY 订单号,器件号; ORDER BY 订单号,器件号; INTO TABLE OD_NEW 步骤5:单击“保存”按钮,并运行程序。

解析
转载请注明原文地址:https://kaotiyun.com/show/ZVsp777K
0

最新回复(0)