【发布时间】:2010-12-01 17:00:37
【问题描述】:
我正在做一个简单的项目来创建表并将数据插入其中,最后执行一些查询。请注意:我使用的是 MySQL 命令客户端。
我的架构很容易实现;没问题。
Emp(eid: integer, ename: string, age: integer, salary: real)
Works(eid: integer, did: integer, pct_time: integer)
Dept(did: integer, budget: real, managerid: integer)
我的第一个问题:
- 查找员工平均年龄最高的部门。
当我第一次阅读这个问题时,似乎很容易。但是,在实施时我无法得到结果。我有很多这样的查询,有人可以解释一下使这些查询更容易的步骤吗?
我使用以下查询来获取所有员工的平均年龄。下一步是获取 MAX 年龄,但是怎么做呢?
> SELECT AVG(E.age) FROM DEPT D,EMP E,WORKS W
> WHERE D.did=W.did and
> W.eid=E.eid GROUP BY D.did
如果你知道任何好书来理解这些类型的查询,那对我来说很好。
第二个问题:
有时一些教师或数据库管理员想要查询的关系代数?
为什么了解查询的关系代数很重要?
我们都可以使用关系代数来实现所有这些复杂的查询吗?
【问题讨论】: