0% found this document useful (0 votes)
2 views

2SQL

The document provides a series of SQL exercises with corresponding queries for each exercise. It covers database management, data retrieval from tables, filtering based on conditions, and understanding the impact of logical operator precedence. Each exercise demonstrates different SQL functionalities, including selection, ordering, and conditional statements.

Uploaded by

ezmandoye092
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

2SQL

The document provides a series of SQL exercises with corresponding queries for each exercise. It covers database management, data retrieval from tables, filtering based on conditions, and understanding the impact of logical operator precedence. Each exercise demonstrates different SQL functionalities, including selection, ordering, and conditional statements.

Uploaded by

ezmandoye092
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

2SQL

Je vais fournir les requêtes SQL pour chaque exercice.

Exercice 1 :
```sql
SHOW DATABASES;
SOURCE HR_mysql_schema.sql;
SOURCE HR_mysql_data.sql;
SHOW DATABASES;
USE HR;
SHOW TABLES;
DESC EMPLOYEES;
DESC DEPARTMENTS;
DESC LOCATIONS;
DESC JOB_GRADES;
```

Exercice 2 :
```sql
SELECT * FROM DEPARTMENTS;
SELECT department_id, department_name FROM DEPARTMENTS;
SELECT department_id, department_name FROM DEPARTMENTS WHERE
manager_id = 100;
```

Exercice 3 :
```sql
SELECT last_name, salary FROM employees WHERE department_id = 80;
SELECT last_name, salary, salary*12 AS "salaire annuel" FROM employees
WHERE department_id = 80;
SELECT last_name, salary, salary + (salary * commission_pct) FROM employees
WHERE department_id = 80;
SELECT last_name, salary, salary + (salary * IFNULL(commission_pct, 0)) FROM
employees;
```

Exercice 4 :
```sql
SELECT last_name, salary, commission_pct FROM employees WHERE
commission_pct IS NULL;
SELECT last_name, salary, commission_pct FROM employees WHERE
commission_pct IS NULL ORDER BY salary DESC;
SELECT last_name, salary, commission_pct FROM employees WHERE
commission_pct IS NOT NULL ORDER BY salary DESC, commission_pct DESC;
SELECT last_name, job_id, hire_date FROM employees ORDER BY hire_date ASC
LIMIT 5;
SELECT DISTINCT job_id FROM employees;
```

Exercice 5 :
```sql
SELECT last_name, hire_date FROM employees WHERE YEAR(hire_date) = 1994;
SELECT last_name FROM employees WHERE last_name LIKE '__a%';
SELECT last_name, department_id FROM employees WHERE department_id IN
(20, 50) ORDER BY last_name ASC;
SELECT last_name, salary FROM employees WHERE salary BETWEEN 5000 AND
12000;
SELECT last_name, salary FROM employees WHERE salary NOT BETWEEN 5000
AND 12000;
SELECT last_name, job_id, salary FROM employees WHERE job_id IN ('SA_REP',
'ST_CLERK') AND salary NOT IN (2500, 3500, 7000);
```

Exercice 6 :
Les deux requêtes diffèrent dans leur résultat à cause de la priorité des
opérateurs logiques :
- Requête a : évalue d'abord (job_id = 'AD_PRES' AND salary > 15000), puis OR
avec job_id = 'SA_REP'
- Requête b : regroupe d'abord la condition OR avec les parenthèses, puis
applique AND salary > 15000

La requête a retourne tous les SA_REP indépendamment du salaire, plus les


AD_PRES avec salaire > 15000
La requête b retourne uniquement les employés (SA_REP ou AD_PRES) ayant un
salaire > 15000

You might also like