mysqlのクエリ列子

ケース#:リターンは、1400年または1700年にはすべての部門の従業員をLOCATION_ID

SELECT  last_name
FROM employees 
WHERE department_id IN(

    SELECT DISTINCT department_id
    FROM departments
    WHERE location_id IN (1400,1700)
);

ケース#:従業員の数であるJOB_ID、名前、給与およびJOB_IDよりも、任意の低賃金従業員の「IT_PROG」部門の他のタイプを返します

SELECT DISTINCT employee_id,last_name,job_id,salary
FROM employees
WHERE salary<ANY(
    SELECT DISTINCT salary
    FROM employees
    WHERE job_id='IT_PROG'
) AND job_id <>'IT_PROG' ;

若しくは

SELECT DISTINCT employee_id,last_name,job_id,salary
FROM employees
WHERE salary<(
    SELECT DISTINCT MAX(salary)
    FROM employees
    WHERE job_id='IT_PROG'
) AND job_id <>'IT_PROG' ;

ケース#:すべての従業員の賃金の低JOB_ID「IT_PROG」部門の他のタイプよりもリターン従業員番号、名前、給与およびJOB_ID

SELECT DISTINCT employee_id,last_name,job_id,salary
FROM employees
WHERE salary<ALL(
    SELECT DISTINCT salary
    FROM employees
    WHERE job_id='IT_PROG'
) AND job_id <>'IT_PROG' ;

若しくは

SELECT DISTINCT employee_id,last_name,job_id,salary
FROM employees
WHERE salary<(
    SELECT DISTINCT MIN(salary)
    FROM employees
    WHERE job_id='IT_PROG'
) AND job_id <>'IT_PROG' ;

おすすめ

転載: blog.51cto.com/14437184/2438109