关于VFP的查询语句问题

SELECT语句完成查询:列出所有订购单的订单号、订购日期、器件号、器件
名和总金额(按订单号升序,订单号相同再按总金额降序)
并将结果存储到results表中(其中订单号、订购日期、总金额取自
order_list表,器件号、器件名取自order_detail表)

请给出查询语句

select order_list.订单号,order_list.订购日期,order_list.总金额,order_detail.器件号,order_detail器件名 order by str(订单号)+str(99999999-总金额) into dbf results

用上面一句就可以实现

如果两个表的连接字段是订单号,那么语句中插入一句:where order_list.订单号=order_detail.订单号

说明:order by,总金额肯定是数值类型把
假设订单号为数值:order by str(订单号)+str(99999999-总金额)
如果实际是字符型:order by 订单号+str(99999999-总金额)
99999999-总金额:金额越大,计算结果越低,以此实现订单号升序,金额降序,当然如果总金额再大,你就把99999999再加大
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-12-12
请注意:两表都应该有器件号这个字段。用于连接两表.
分两个语句完成功能:
SELECT order_list.订单号,order_list.订购日期,order_detail.器件号,order_detail.器件名,order_list.总金额 from order_list,order_detail where order_detail.器件号=order_list.器件号 order by 订单号,总金额 desc

COPY TO results

关于VFP的查询语句问题
select order_list.订单号,order_list.订购日期,order_list.总金额,order_detail.器件号,order_detail器件名 order by str(订单号)+str(99999999-总金额) into dbf results 用上面一句就可以实现 如果两个表的连接字段是订单号,那么语句中插入一句:where order_list.订单号=order_detail.订单号 说明:...

vfp中对查询结果进行编辑的问题
应该是select * from 1.dbf into cursor XXX where dwmc like '%煤%'XXX是你想要的临时表名,但临时表是不能进行插入和删除操作的。但有个命令readwrite可以把临时表改为可以修改 最终的结果是 select * from 1.dbf into cursor XXX where dwmc like '%煤%' readwrite ...

vfp写的程序基本都是select查询语句,怎么自动执行下一条语句呢 不用...
执行完一个Select,程式没有报错,条件允许就会执行下一个Select呀,不用按Esc呀

请问:vf命令是如何使用的?
语法结构:VF命令的使用主要遵循SQL语言的语法规则。以基本的查询语句为例,其基本结构如下:SELECT 字段名列表 FROM 表名 [WHERE 条件表达式];其中,`SELECT`关键字用于指定要检索的字段,`FROM`关键字用于指定数据来源的表,`WHERE`关键字(可选)用于设置查询条件。例如,查询学生表中所有学生的姓名和...

大学计算机VFP的题目 11.查询所藏图书中,各个出版社图书的最高单价...
12)select * from 藏书表 where 单价>(select max(单价) from 藏书表 where 出版社="科学出版社")13)select 姓名,部门,count(*) as 借书数量 from 读者信息表,图书借阅表 where 读者信息表.借书证号=图书借阅表.借书证号 group by 姓名,部门 having count(*)<=2 14)select 姓名,部门 ...

vfpsele语句问题
答案:vfpsele语句是用于在Visual FoxPro数据库中筛选记录的关键语句。它允许用户根据特定的条件选择数据表中的记录。详细解释:1. vfpsele语句的功能:vfpsele是Visual FoxPro数据库中的一个命令,用于筛选数据表中的记录。它允许用户根据特定的条件选择符合要求的记录。这种筛选功能在数据库管理和数据分析中...

vFP中SQL查询join语句与on语句的顺序问题,先谢谢老师啦
就是 join 1 2 3的话,on 就是3 2 1这样的顺序 因为你的题目中score 是一张中间表,他分别和student和course有关联条件。而student和course没有关联条件,所以你的题目中实际顺序是 on 3=2 on 3=1 这样也是符合顺序相反的,因为3是最大的,而不是一味的遵循一定要 3 2 1这样排 ...

vfp查询,提示:命令中缺少必需的子句 。需要智力及眼力,才能找出问题
首先,语句结束不要用分号 ,vfp中分号符是用作连接下行语句的,如 select * from aaa;where abc="bcd"然后,表的名称也不要用数字开头

计算机vfp 利用SQL语句查询手机号码最后一位为6的学生的全部信息
该题要用到SUBSTRING和LEN函数,SQL见下面:SELECT * FROM 表名 WHERE SUBSTRING(手机字段,LEN(手机字段),1) = '6'

VFP中用"IF FOUND"语句查找记录并显示在表单的表格中
use 表名 copy stru to temp select 表名 locate for alltrim(字段名) == alltrim(thisform.text1.value)do while found()intsert into temp ...continue enddo thisform.grid1.recordsource = 'temp'这是不完整的代码,因为你给出是信息部够完整 其实,完全可以使用sql语句来解决 ...

相似回答
大家正在搜