Browse Source

Demo queries from slides

master
Bart De Lepeleer 2 years ago
parent
commit
87be5186f5

+ 4
- 0
demo-queries-from slides-1.sql View File

@@ -0,0 +1,4 @@
SELECT invoice_number, vendor_name
FROM vendors INNER JOIN invoices
ON vendors.vendor_id = invoices.vendor_id
ORDER BY invoice_number;

+ 10
- 0
demo-queries-from slides-10.sql View File

@@ -0,0 +1,10 @@
SELECT invoice_number, vendor_name
FROM vendors
JOIN invoices USING (vendor_id)
ORDER BY invoice_number;

SELECT department_name, last_name, project_number
FROM departments
JOIN employees USING (department_number)
LEFT JOIN projects USING (employee_id)
ORDER BY department_name;

+ 14
- 0
demo-queries-from slides-11.sql View File

@@ -0,0 +1,14 @@
USE ap;

SELECT invoice_number, vendor_name
FROM vendors
NATURAL JOIN invoices
ORDER BY invoice_number;
USE ex;

SELECT department_name AS dept_name, last_name, project_number
FROM departments
NATURAL JOIN employees
LEFT JOIN projects USING (employee_id)
ORDER BY department_name;

+ 9
- 0
demo-queries-from slides-12.sql View File

@@ -0,0 +1,9 @@
SELECT departments.department_number, department_name, employee_id,
last_name
FROM departments CROSS JOIN employees
ORDER BY departments.department_number;

SELECT departments.department_number, department_name, employee_id,
last_name
FROM departments, employees
ORDER BY departments.department_number;

+ 8
- 0
demo-queries-from slides-13.sql View File

@@ -0,0 +1,8 @@
SELECT 'Active' AS source, invoice_number, invoice_date, invoice_total
FROM active_invoices
WHERE invoice_date >= '2018-06-01'
UNION
SELECT 'Paid' AS source, invoice_number, invoice_date, invoice_total
FROM paid_invoices
WHERE invoice_date >= '2018-06-01'
ORDER BY invoice_total DESC;

+ 27
- 0
demo-queries-from slides-14.sql View File

@@ -0,0 +1,27 @@
SELECT 'Active' AS source, invoice_number, invoice_date, invoice_total
FROM invoices
WHERE invoice_total - payment_total - credit_total > 0
UNION
SELECT 'Paid' AS source, invoice_number, invoice_date, invoice_total
FROM invoices
WHERE invoice_total - payment_total - credit_total <= 0
ORDER BY invoice_total DESC;

SELECT invoice_number, vendor_name, '33% Payment' AS payment_type,
invoice_total AS total, invoice_total * 0.333 AS payment
FROM invoices JOIN vendors
ON invoices.vendor_id = vendors.vendor_id
WHERE invoice_total > 10000
UNION
SELECT invoice_number, vendor_name, '50% Payment' AS payment_type,
invoice_total AS total, invoice_total * 0.5 AS payment
FROM invoices JOIN vendors
ON invoices.vendor_id = vendors.vendor_id
WHERE invoice_total BETWEEN 500 AND 10000
UNION
SELECT invoice_number, vendor_name, 'Full amount' AS payment_type,
invoice_total AS total, invoice_total AS payment
FROM invoices JOIN vendors
ON invoices.vendor_id = vendors.vendor_id
WHERE invoice_total < 500
ORDER BY payment_type, vendor_name, invoice_number;

+ 14
- 0
demo-queries-from slides-15.sql View File

@@ -0,0 +1,14 @@
USE ex;

SELECT department_name AS dept_name, d.department_number AS d_dept_no,
e.department_number AS e_dept_no, last_name
FROM departments d
LEFT JOIN employees e
ON d.department_number = e.department_number
UNION
SELECT department_name AS dept_name, d.department_number AS d_dept_no,
e.department_number AS e_dept_no, last_name
FROM departments d
RIGHT JOIN employees e
ON d.department_number = e.department_number
ORDER BY dept_name;

+ 12
- 0
demo-queries-from slides-2.sql View File

@@ -0,0 +1,12 @@
SELECT invoice_number, vendor_name, invoice_due_date,
invoice_total - payment_total - credit_total AS balance_due
FROM vendors v JOIN invoices i
ON v.vendor_id = i.vendor_id
WHERE invoice_total - payment_total - credit_total > 0
ORDER BY invoice_due_date DESC;

SELECT invoice_number, line_item_amount, line_item_description
FROM invoices JOIN invoice_line_items line_items
ON invoices.invoice_id = line_items.invoice_id
WHERE account_number = 540
ORDER BY invoice_date;

+ 6
- 0
demo-queries-from slides-3.sql View File

@@ -0,0 +1,6 @@
SELECT vendor_name, customer_last_name, customer_first_name,
vendor_state AS state, vendor_city AS city
FROM vendors v
JOIN om.customers c
ON v.vendor_zip_code = c.customer_zip
ORDER BY state, city;

+ 6
- 0
demo-queries-from slides-4.sql View File

@@ -0,0 +1,6 @@
USE ex;

SELECT customer_first_name, customer_last_name
FROM customers c JOIN employees e
ON c.customer_first_name = e.first_name
AND c.customer_last_name = e.last_name;

+ 7
- 0
demo-queries-from slides-5.sql View File

@@ -0,0 +1,7 @@
SELECT DISTINCT v1.vendor_name, v1.vendor_city,
v1.vendor_state
FROM vendors v1 JOIN vendors v2
ON v1.vendor_city = v2.vendor_city AND
v1.vendor_state = v2.vendor_state AND
v1.vendor_name <> v2.vendor_name
ORDER BY v1.vendor_state, v1.vendor_city;

+ 11
- 0
demo-queries-from slides-6.sql View File

@@ -0,0 +1,11 @@
SELECT vendor_name, invoice_number, invoice_date,
line_item_amount, account_description
FROM vendors v
JOIN invoices i
ON v.vendor_id = i.vendor_id
JOIN invoice_line_items li
ON i.invoice_id = li.invoice_id
JOIN general_ledger_accounts gl
ON li.account_number = gl.account_number
WHERE invoice_total - payment_total - credit_total > 0
ORDER BY vendor_name, line_item_amount DESC;

+ 14
- 0
demo-queries-from slides-7.sql View File

@@ -0,0 +1,14 @@
SELECT invoice_number, vendor_name
FROM vendors v, invoices i
WHERE v.vendor_id = i.vendor_id
ORDER BY invoice_number;

SELECT vendor_name, invoice_number, invoice_date,
line_item_amount, account_description
FROM vendors v, invoices i, invoice_line_items li,
general_ledger_accounts gl
WHERE v.vendor_id = i.vendor_id
AND i.invoice_id = li.invoice_id
AND li.account_number = gl.account_number
AND invoice_total - payment_total - credit_total > 0
ORDER BY vendor_name, line_item_amount DESC;

+ 4
- 0
demo-queries-from slides-8.sql View File

@@ -0,0 +1,4 @@
SELECT vendor_name, invoice_number, invoice_total
FROM vendors LEFT JOIN invoices
ON vendors.vendor_id = invoices.vendor_id
ORDER BY vendor_name;

+ 29
- 0
demo-queries-from slides-9.sql View File

@@ -0,0 +1,29 @@
USE ex;

SELECT department_name, d.department_number, last_name
FROM departments d
LEFT JOIN employees e
ON d.department_number = e.department_number
ORDER BY department_name;

SELECT department_name, e.department_number, last_name
FROM departments d
RIGHT JOIN employees e
ON d.department_number = e.department_number
ORDER BY department_name;

SELECT department_name, last_name, project_number
FROM departments d
LEFT JOIN employees e
ON d.department_number = e.department_number
LEFT JOIN projects p
ON e.employee_id = p.employee_id
ORDER BY department_name, last_name;

SELECT department_name, last_name, project_number
FROM departments d
JOIN employees e
ON d.department_number = e.department_number
LEFT JOIN projects p
ON e.employee_id = p.employee_id
ORDER BY department_name, last_name;

Loading…
Cancel
Save