资源描述:
《vfp上机练习题_索引与排序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、排序与索引将sb.dbf复制到D盘根目录下的xxx文件夹(xxx可用任意字母代替),执行命令:SETDEFAULTTOD:XXX。一、表的排序命令SORT示例1:将所有设备按部门降序排列,部门相同时按价格升序排列USESBSORTTObmjgON部门/D,价格/AUSEbmjgLIST示例2:将所有设备按部门升序排列,部门相同按启用日期降序排列,要求只包含编号、名称、启用日期及部门4个字段。USEsbSORTTObmrqON部门/A,启用日期/DFIELDS编号,名称,启用日期,部门USEbmrqLIST2.表的索引命令⑴建立索引的命令示例1:为设备表以价格字段作
2、为索引关键字建立普通索引,要求降序排列USEsbINDEXON价格TAGjgDESCENDINGLIST示例2:为设备表以编号作为索引关键字建立候选索引,要求升序排列USEsbINDEXON编号TAGbhASCENDINGCANDIDATELIST示例3:为设备表以启用日期作为索引关键字建立普通索引,要求降序排列USEsbINDEXON启用日期TAGqyrqDESCENDINGLIST示例4:为设备表建立索引,要求按部门升序排列,部门相同时按启用日期升序排列USESBINDEXON部门+DTOS(启用日期)TAGbmrqASCENDINGLIST示例5:为设备表建立
3、索引,要求按部门降序排列,部门相同时按价格降序排列USEsbINDEXON部门+str(价格,9,2)TAGbmjg1DESCENDINGLIST示例6:为设备表建立索引,要求按部门升序排列,部门相同时按价格降序排列USEsbINDEXONval(部门)-价格/1000000TAGbmjg2ASCENDINGLIST示例7:为设备表建立索引,要求按部门降序排列,部门相同时按价格升序排列USEsbINDEXONval(部门)-价格/1000000TAGbmjg3DESCENDINGLIST注意:比较示例6和示例7⑵确定主控索引的命令示例1:确定jg为当前主控索引SET
4、ORDERTOTAGjg示例2:确定bmjg2为当前主控索引SETORDERTObmjg2二、用SELECT-SQL命令建立查询1.单表查询示例⑴查询所有设备信息SELECT*FROMsb⑵查询价格在一万元以上的设备信息SELECT*FROMsbWHERE价格>=10000⑶查询价格在一万元以上、十万元以下的设备的编号、名称及价格SELECT编号,名称,价格FROMsbWHERE价格>=10000AND价格<=100000⑷查询所有设备的编号、名称及价格,并按价格降序排列SELECT编号,名称,价格FROMsbORDERBY价格DESCENDING⑸查询按价格由高到
5、低排列后的前3条记录SELECT*FROMsbORDERBY价格DESCENDINGTOP3⑹查询价格在一万元以上的设备台数SELECTCOUNT(*)AS万元以上设备台数FROMsbWHERE价格>=10000⑺查询主要设备和非主要设备的台数SELECT主要设备,COUNT(*)AS设备台数FROMsbGROUPBY主要设备⑻查询资产总额SELECTSUM(价格)AS资产总额FROMsb⑼查询各部门资产额SELECT部门,SUM(价格)AS部门资产额FROMsbGROUPBY部门⑽查询各部门资产额,仅列出部门资产在一万元以上的记录,并按部门资产额降序排列SELEC
6、T部门,SUM(价格)AS部门资产额FROMsbGROUPBY部门;HAVINGSUM(价格)>=10000ORDERBY2DESCENDING⑾查询各设备的累计增值金额SELECT编号,SUM(增值)AS累计增值金额FROMzzGROUPBY编号⑿查询累计大修费用在五千元以上的设备编号及累计大修费用SELECT编号,SUM(费用)AS累计大修费用FROMdxGROUPBY编号;HAVING累计大修费用>=50002.多表查询示例⑴查询所有设备的编号、名称、价格及所在部门的名称①SELECTsb.编号,sb.名称AS设备名称,sb.价格,bmdm.名称AS部门名称;
7、FROMsb,bmdmWHEREsb.部门=bmdm.代码②SELECTsb.编号,sb.名称AS设备名称,sb.价格,bmdm.名称AS部门名称;FROMsbJOINbmdmONsb.部门=bmdm.代码⑵查询部门资产额在十万元以上的部门名称及资产额,并按资产额降序排列①SELECTbmdm.名称,SUM(sb.价格)AS部门资产额FROMsb,bmdm;WHEREsb.部门=bmdm.代码GROUPBY部门;HAVING部门资产额>=100000ORDERBY2DESCENDING②SELECTbmdm.名称,SUM(sb.价格)AS部门资产额;FROMsb