谁会数据库语言啊。。。。额。。题目格式歪歪扭扭不能怪我- -
问一下
没太大希望。。
题目。。三个表
depart表:
部门号 部门名 负责人号
1 财务处 1001
2 人事处 2001
3 市场部 3001
Worker表:
职工号 姓名 性别 出生日期 党员否 参加工作 部门号
1001 孙华 男 01/03/52 是 10/10/70 1
2002 陈明 男 05/08/55 否 01/01/72 2
1007 程西 女 06/10/80 否 07/10/02 1
2003 孙天奇 女 03/10/65 是 07/10/87 2
2004 刘夫文 男 01/11/52 否 08/10/70 2
1008 刘欣 男 10/08/54 否 08/10/72 1
3004 余慧 男 12/04/80 否 08/10/02 3
2007 张旗 男 11/10/80 否 08/10/02 2
1013 王小燕 女 04/10/64 否 07/10/89 1
3001 李华 男 08/07/56 是 07/20/83 3
2001 陈涛 男 04/10/58 是 07/12/85 2
3006 李艺 女 04/10/63 否 07/12/90 3
3009 李涵 男 04/19/65 是 07/10/89 3
3015 魏君 男 01/10/70 否 07/10/93 3
1018 欧阳兵 男 12/09/71 是 07/20/92 1
Salary表:
职工号 姓名 日期 工资
1001 孙华 01/04/04 1201.5
2002 陈明 01/04/04 1350.6
1007 程西 01/04/04 750.8
2003 孙天奇 01/04/04 900.0
2004 刘夫文 01/04/04 2006.8
1008 刘欣 01/04/04 1250.0
3004 余慧 01/04/04 725.0
2007 张旗 01/04/04 728.0
1013 王小燕 01/04/04 1200.0
3001 李华 01/04/04 1500.5
2001 陈涛 01/04/04 1800.0
3006 李艺 01/04/04 1000.6
3009 李涵 01/04/04 1345.0
3015 魏君 01/04/04 1100.0
1018 欧阳兵 01/04/04 1085.0
1001 孙华 02/03/04 1206.5
2002 陈明 02/03/04 1355.6
1007 程西 02/03/04 755.8
2003 孙天奇 02/03/04 905.0
2004 刘夫文 02/03/04 2011.8
1008 刘欣 02/03/04 1255.0
3004 余慧 02/03/04 730.0
2007 张旗 02/03/04 733.0
1013 王小燕 02/03/04 1205.0
3001 李华 02/03/04 1505.5
2001 陈涛 02/03/04 1250.8
3006 李艺 02/03/04 1005.8
3009 李涵 02/03/04 1350.0
3015 魏君 02/03/04 1105.0
1018 欧阳兵 02/03/04 1085.0
然后要求是
6) 显示各个部门名和该部门的平均工资;
(这个我用的语句是
SELECT 部门名, AVG(工资)
FROM depart, worker
WHERE worker.部门号 = depart.部门号
GROUP BY 部门名
HAVING AVG(工资) IN
(SELECT AVG(工资)
FROM salrayWHEREworker.职工号 = salary.职工号)
然后他总是出来我第一行语句有语法错误- -)
7) 显示所有职工的职工号、姓名、部门名和2004年2月份的工资,并按部门号排序;
SELECT 职工号,姓名,部门名,工资
FROM worker.salary.worker
WHERE worker.职工号=salary.职工号 AND
worker.姓名=salary.姓名 AND
(salary.日期 >= '2004.01.31') AND (salary.日期 <= '2004.03.01')AND worker.部门号=depart.部门号AND部门号in
(SELECE 部门名
FROM depart)
ORDER BY 部门号
错误理由和上面差不多。。。- -
8) 显示所有平均工资高于1000元的部门名和对应的平均工资;
这个还没做。。- -
9) 查询比李华工资高的所有职工号、姓名和工资数;
SELECE a.职工号,a.姓名,a.工资数
FROM salary AS a,salary AS b
WHERE a.工资>b.工资 AND b.姓名="李华"
用的貌似是自己和自己笛卡尔集。。可是运行结果不知道为什么会出现相同列。。-。-
10) 查询市场部中工资高于该部门平均工资的职工名和工资数;
11) 查找李涵职工所在部门的名称以及他参加工作的日期
暂时是这些。。。
[ 本帖最后由 i_icezjl 于 2006-9-24 23:22 编辑 ] |