下面是一个人才信息管理数据库,其中有三张表。 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

专门人才基本情况表 rcda.dbf<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
专门人才专业特长表 zytc.dbf

专业人才成就成果表 cjda.dbf

 
习题: 1.     查询 RCDA 表中的所有信息;

Select * from rcda

2.     查询编号、姓名、性别、出生日期、工资现状、党员否,并按编号的字段值降序排列。

Select 编号 , 姓名 , 性别 , 出生日期 , 工资现状 , 党员否 from rcda ;

order by 编号 desc

3.     查询编号、姓名、性别、出生日期、工资现状、党员否,要求只选择工资现状超过 5000 元的记录。

Select 编号 , 姓名 , 性别 , 出生日期 , 工资现状 , 党员否 from rcda ;

Where 工资现状 >5000

4.     查询编号、姓名、性别、出生日期、工资现状、党员否,要求只选择工资现状超过 5000 ,少于 3000 元的记录,且查询结果按工资现状字段值升序排列。

Select 编号 , 姓名 , 性别 , 出生日期 , 工资现状 , 党员否 from rcda;

Where 工资现状 >5000 or 工资现状 <3000 order by 工资现状

5.     查询 RCDA 表中所有字段的信息,要求选择所有男同志的记录。

Select * from rcda where 性别 =”

6.     查询编号、姓名、性别、专业、职称。

Select rcda. 编号 ,rcda. 姓名 ,rcda. 性别 ,zytc. 专业 ,zytc. 职称 from ;

Rcda,zytc where Rcda. 编号 =zytc. 编号

7.     查询编号、姓名、成果名称、成果类别、成果出处。

Select rcda. 编号 ,rcda. 姓名 ,cjda. 成果名称 ,cjda. 成果类别 ,;

cjda. 成果出处 from rcda,cjda ;

where rcda. 编号 =cjda. 编号

8.     RCDA 表中查询所有记录的姓名和工资现状的情况;

Select 姓名 , 工资现状 from rcda

9.     RCDA 表中查询所有男性的姓名、性别和工资现状的情况,并按工资现状降序排序;

Select 姓名 , 性别 , 工资现状 from rcda order by 工资现状 desc

10. RCDA 表中查询年龄在 40-50 岁间的职工的姓名,出生日期;

方法一 :

Select 姓名 , 出生日期 ,(date()- 出生日期 )/365  as 年龄 from rcda ;

Into dbf  rcda01

Select 姓名 , 出生日期 , 年龄 from rcda01 where 年龄 ;

between 40  and 50

方法二 :

Select 姓名 , 出生日期 ,(date()- 出生日期 )/365 as 年龄 from rcda ;

where (date()- 出生日期 )/365 between 40  and 50

 

11. RCDA 表中求所有人的工资总和,并将列标题改为“工资总和”;

Select sum( 工资现状 )  as 工资总和 from  rcda

12. RCDA 表中查询男职工和女职工的工资总和;

Select 性别 ,sum( 工资现状 ) as 工资总和 from rcda group by 性别

13. RCDA 表中查询工资最少的人的姓名和工资;

方法一 :

Select min( 工资现状 ) from rcda into array x

Select 姓名 , 工资现状 from rcda where 工资现状 =x

方法二 : 嵌套查询

Select 姓名 , 工资现状 from rcda ;

where 工资现状 =( Select min( 工资现状 ) from rcda)

14. RCDA 表中查询工资最多的人的姓名和工资;

方法一 : Select max( 工资现状 ) from rcda into array x

Select 姓名 , 工资现状 from rcda where 工资现状 =x

方法二 : 嵌套查询

Select 姓名 , 工资现状 from rcda ;

where 工资现状 =( Select max( 工资现状 ) from rcda)

15. RCDA 表中查询所有人的平均工资;

Select avg( 工资现状 ) from rcda

16. RCDA 表及 ZYTC 表中查询所有人的编号、姓名及职称,将查询的内容存入表 RYZC 中;

Select rcda. 编号 ,rcda. 姓名 ,zytc. 职称 from rcda,zytc ;

Where rcda. 编号 =zytc. 编号 into dbf RYZC

17. RCDA 表及 ZYTC 表中查询职称为副教授的记录的姓名、职称,并按姓名降序排序;

Select rcda. 姓名 ,zytc. 职称 from rcda,zytc where rcda. 编号 =zytc. 编号 ;

And  zytc. 职称 =” 副教授 ” order by rcda. 姓名 desc

18. SQL 语句创建表 XSCJ ,其中:学号 C(8) ;姓名 C(8) ;出生日期 D(8) ;总成绩   N(10 2) ;出生地 C(12)

Create table XSCJ( 学号 C(8), 姓名 C(8), 出生日期 D,;

总成绩   N(10,2), 出生地 C(12))

19. XSCJ 表中的学号字段的宽度改为 6

Alter table XSCJ alter 学号 c(6)

20. 删除字段出生地;

Alter table XSCJ drop 出生地

21. 增加字段性别 C(2)

Alter table XSCJ add 性别 c(2)

22. 给表 XSCJ 追加记录;

Insert Into XSCJ( 学号 , 姓名 , 出生日期 , 总成绩 )  values;

(“<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />0001”,” 张学友 ”,{^1966-05-21},79)

23. 将学号为 000001 的姓名改为张三;

Update XSCJ set 姓名 =” 张三 ” where 学号 =”000001”

24. 逻辑删除所有性别为男的记录。

方法一 :

Delete from xscj where 性别 =”

方法二 :

Use  XSCJ

Delete for 性别 =”