已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题?**添加详细信息并通过editing this post阐明问题。
2小时前关门了。
Improve this question
1.选择将根据最大年龄选择员工的查询
- select department,id,age from(select id,department,age,max(age)over(partition by department)as Mage from table)其中age= mage
1.从表中选择不同的部门,ID,年龄按部门排序,年龄说明
(a)1和2都可以
(b)% 1工作,但% 2不工作
(c)2工作,但1不工作
(d)两者都不正确
正确的解决方案是什么
1条答案
按热度按时间tf7tbtn21#
(b)% 1工作,但% 2不工作
**1.**子查询按部门获取max(年龄)。
对于Dept 1,这可能会返回类似于
| 身份证|部门|年龄| Mage |
| --------------|--------------|--------------|--------------|
| 空1|部门1|二十三|三十二|
| 空2|部门1|十九|三十二|
| Emp3|部门1|三十二|三十二|
外部查询中的where子句
比较age列和 Mage 列。因为它们只在Emp 3上匹配,所以这是Dept 1返回的唯一一行。
| 部门|身份证|年龄|
| --------------|--------------|--------------|
| 部门1|Emp3|三十二|
**2.**这个程序不工作,因为语法错误。'Select distinct on department...'不正确。它应该是'select distinct department...'。On会抛出错误。即使你修复了这个问题,这个程序仍然不工作。它没有找到最大年龄。它只是把年龄按顺序排列。