Section 1
A)
1. SELECT name, commission FROM salesmen;
2. SELECT salesman_id, name, city, commission
FROM salesmen
WHERE commission BETWEEN 0.10 AND 0.12;
3. SELECT salesman_id, name, city, commission
FROM salesmen
WHERE city NOT IN ('Paris', 'Rome');
4. SELECT *
FROM salesmen
WHERE name LIKE '[B-K]%';
5. SELECT *
FROM salesmen
WHERE name NOT LIKE '[A-L]%';
6. SELECT *
FROM customers
WHERE name LIKE 'B%';
b)
1. SELECT ord_date, salesman_id, ord_no,
purch_amt FROM orders;
2. SELECT DISTINCT name AS SalesName
FROM salesmen
3. SELECT name,
commission FROM salesmen
WHERE city = 'Paris';
4. SELECT * FROM orders
WHERE (ord_date != '2012-09-10' AND salesman_id <= 5005)
OR (purch_amt <= 1000.00);
5. SELECT
ord_no AS order_number,
purch_amt AS purchase_amount,
((purch_amt / 6000) * 100) AS achieved_percentage,
100 - ((purch_amt / 6000) * 100) AS unachieved_percentage
FROM
orders
WHERE
purch_amt > 0.5 * 6000;
c)
1. SELECT *
FROM customer
WHERE grade = 200;
2. SELECT *
FROM customer
WHERE grade BETWEEN 200 AND 300;
3. SELECT *
FROM customer
WHERE city = 'New York' AND grade > 100;
4. SELECT *
FROM customer
WHERE city = 'New York' OR (grade IS NULL OR grade > 100);
5.
SELECT *
FROM customer
WHERE city = 'New York' OR (grade IS NULL OR grade <= 100);
6. SELECT *
FROM
customer
WHERE city <>
'New York' AND
grade <= 100;
7. SELECT *
FROM customer
WHERE customer_id IN (3007, 3008, 3009);
8. SELECT *
FROM customer
WHERE cust_name LIKE '%n';
9. SELECT *
FROM customer
WHERE grade IS NOT NULL;
10. SELECT
COUNT(*) AS
num_customes
FROM customer;
11. SELECT
COUNT(*) AS
num_customer
s_with_grade
FROM customer
WHERE grade IS NOT NULL;
12. SELECT city, MAX(grade) AS highest_grade
FROM customer
GROUP BY city;
SECTION 2
1. SELECT c.cust_name AS customer_name, s.name AS salesman_name
FROM customer c
JOIN salesmen s ON c.salesman_id = s.salesman_id;
2. SELECT o.* FROM orders o
JOIN customer c ON o.customer_id = c.customer_id
WHERE o.city != c.city;
3. SELECT c.cust_name AS Customer_Name, s.name AS SalesName, SUM(o.purch_amt) AS
Total_Purchase_Amount
FROM customer c
JOIN salesmen s ON c.salesman_id = s.salesman_id
JOIN orders o ON c.customer_id = o.customer_id
GROUP BY c.cust_name, s.name;
4. SELECT c.cust_name AS Customer_Name, c.city AS City, s.name AS Salesman, s.commission AS Commission
FROM customer c
JOIN salesmen s ON c.salesman_id = s.salesman_id
WHERE s.commission >= 0.12 AND s.commission <= 0.14;
5. SELECT c.cust_name AS Customer_Name, o.ord_no AS Order_Number, o.ord_date AS Order_Date
FROM customer c
JOIN orders o ON c.customer_id = o.customer_id
WHERE o.ord_date = '2012-10-05';
6. SELECT s.name AS Salesman_Name, c.cust_name AS Customer_Name, s.city AS Salesman_City
FROM salesmen s
JOIN customer c ON s.salesman_id = c.salesman_id
WHERE s.city = c.city;
SECTION 3
1. SELECT SUM(purch_amt) AS
Total_Purchase_Amount FROM orders;
2. SELECT AVG(purch_amt) AS
Average_Purchase_Amount FROM orders;
3. SELECT s.salesman_id, s.name AS Salesman_Name, COUNT(c.customer_id) AS Number_of_Customers
FROM salesmen s
JOIN customer c ON s.salesman_id = c.salesman_id
GROUP BY s.salesman_id, s.name;
4. SELECT MAX(purch_amt) AS
Max_Purchase_Amount FROM orders;
5. SELECT MIN(purch_amt) AS Min_Purchase_Amount
FROM orders;
6. SELECT customer_id, MAX(purch_amt) AS Highest_Purchase_Amount
FROM orders
GROUP BY customer_id;
7. SELECT customer_id, ord_date AS Order_Date, MAX(purch_amt) AS
Highest_Purchase_Amount FROM orders
GROUP BY customer_id, ord_date;
8. SELECT customer_id, ord_date AS Order_Date, MAX(purch_amt) AS
Highest_Purchase_Amount FROM orders
GROUP BY customer_id, ord_date
HAVING MAX(purch_amt) > 2000;
9. SELECT customer_id, MAX(purch_amt) AS Highest_Purchase_Amount
FROM orders
WHERE customer_id BETWEEN 3002 AND 3007
GROUP BY customer_id;
10. SELECT customer_id, MAX(purch_amt) AS
Max_Purchase_Amount FROM orders
WHERE customer_id BETWEEN 3002 AND 3007
GROUP BY customer_id
HAVING MAX(purch_amt) > 1000;
11. SELECT c.salesman_id, MAX(o.purch_amt) AS Highest_Purchase_Amount
FROM customer c
JOIN orders o ON c.customer_id = o.customer_id
WHERE c.salesman_id BETWEEN 5003 AND 5008
GROUP BY c.salesman_id;
12. SELECT COUNT(*) AS Order_Count
FROM orders
WHERE ord_date = '2012-08-17';
SECTION 4
1. SELECT EMPLOYEE_ID
FROM JOB_HISTOORY
GROUP BY EMPLOYEE_ID
HAVING COUNT(DISTINCT JOB_ID) >= 2;
B) SELECT * FROM salesmen
WHERE city = 'London'
UNION
SELECT * FROM customer
WHERE city = 'London';