w3resource

SQL exercises on employee Database: List the name, job name, annual salary, department id, department name and grade of the employees who earn 60000 in a year or not working as an ANALYST

SQL employee Database: Exercise-53 with Solution

[An editor is available at the bottom of the page to write and execute the scripts.]

53. From the following tables, write a SQL query to find those employees who earn 60000 in a year or not working as an ANALYST. Return employee name, job name, (12*salary) as Annual Salary, department ID, and grade.

Sample table: employees


Sample table: department


Sample table: salary_grade


Pictorial Presentation:

SQL exercises on employee Database: List the name, job name, annual salary, department id, department name and grade of the employees who earn 60000 in a year or not working as an ANALYST

Sample Solution:

SELECT e.emp_name,
       e.job_name,
       (12*e.salary)"Annual Salary",
       e.dep_id,
       d.dep_name,
       s.grade
FROM employees e,
     department d,
     salary_grade s
WHERE e.dep_id = d.dep_id
  AND e.salary BETWEEN s.min_sal AND s.max_sal
  AND (((12*e.salary)>= 60000)
       OR (e.job_name != 'ANALYST'))

Sample Output:

 emp_name | job_name  | Annual Salary | dep_id | dep_name  | grade
----------+-----------+---------------+--------+-----------+-------
 SANDRINE | CLERK     |      10800.00 |   2001 | AUDIT     |     1
 ADNRES   | CLERK     |      14400.00 |   2001 | AUDIT     |     1
 JULIUS   | CLERK     |      12600.00 |   3001 | MARKETING |     1
 WADE     | SALESMAN  |      16200.00 |   3001 | MARKETING |     2
 MADDEN   | SALESMAN  |      16200.00 |   3001 | MARKETING |     2
 MARKER   | CLERK     |      16800.00 |   1001 | FINANCE   |     2
 ADELYN   | SALESMAN  |      20400.00 |   3001 | MARKETING |     3
 TUCKER   | SALESMAN  |      19200.00 |   3001 | MARKETING |     3
 BLAZE    | MANAGER   |      33000.00 |   3001 | MARKETING |     4
 CLARE    | MANAGER   |      30600.00 |   1001 | FINANCE   |     4
 JONAS    | MANAGER   |      35484.00 |   2001 | AUDIT     |     4
 KAYLING  | PRESIDENT |      72000.00 |   1001 | FINANCE   |     5
(12 rows)

Practice Online


Sample Database: employee

employee database structure

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: From the following table, write a SQL query to find employees along with department name. Return employee ID, employee name, job name, manager ID, hire date, salary, commission, department ID, and department name.
Next: From the following table, write a SQL query to find those employees whose salary is higher than the salary of their managers. Return employee name, job name, manager ID, salary, manager name, manager's salary.

What is the difficulty level of this exercise?