Oracleemp
テーブルを考えてみましょう。と で最高の給与を持つ従業員を取得したいと思いdepartment = 20
ますjob = clerk
。また、「empno」列がなく、主キーに多数の列が含まれているとします。これは次の方法で実行できます。
select * from scott.emp
where deptno = 20 and job = 'CLERK'
and sal = (select max(sal) from scott.emp
where deptno = 20 and job = 'CLERK')
これは機能しますが、テスト deptno = 20 と job = 'CLERK' を複製する必要があり、これは避けたいと考えています。これを書くためのよりエレガントな方法はありgroup by
ますか? ところで、これが重要な場合、私は Oracle を使用しています。