エラー: ORA-01427:single-row subquery returns more than one row

 

サブクエリを書いているとよく出るエラー

 

SELECT first_name, hire_date From employees
WHERE hire_date =
                  (select MIN(hire_date) from employees
                   group by department_id)

;

 

↓サブクエリだけのOUTPUTは複数出る。group byでくくっているから。

select MIN(hire_date) from employees
                   group by department_id

 

hire_date =に対しては複数はダメ。

解決法: group by department_idを取って、OUTPUTを1つにすればOK

 

サブクエリだけのOUTPUTを毎回確認するとよい。

 

以上