/goit-rdb-hw-04

Relationship Databases Topic IV DML and DDL commands. Complex SQL expressions

goit-rdb-hw-04 Relationship Databases Topic IV DML and DDL commands. Complex SQL expressions

  1. Структура БД a. Назва схеми — “LibraryManagement” b. Таблиця "authors":

screenshot

c. Таблиця "genres":

screenshot

d. Таблиця "books":

screenshot

e. Таблиця "users":

screenshot

f. Таблиця "borrowed_books":

screenshot

  1. Tables filled with test data rows:

screenshot screenshot

screenshot screenshot screenshot screenshot screenshot

  1. A query using FROM and INNER JOIN statements that joins all the data tables from the files: order_details, orders, customers, products, categories, employees, shippers, suppliers with shared keys:

screenshot screenshot screenshot

  1. Let's determine how many rows we got (using the COUNT statement):

screenshot

a. Let's change several INNER statements to LEFT or RIGHT and determine what happens to the number of rows and why:

screenshot screenshot screenshot

-- Кількість рядків змінюється тому, що INNER JOINs включають лише рядки, які мають співпадіючі значення в обох таблицях. LEFT і RIGHT JOINs, навпаки, включають всі рядки з однієї таблиці та лише співпадіючі рядки з іншої таблиці. Це може привести до збільшення кількості рядків, якщо є рядки, які не співпадають у якійсь таблиці, або зменшення, якщо є рядки, які не співпадають у обох таблицях. У нашому випадку кількість рядків залишається незмінною, 518.

b. Select only those rows where employee_id > 3 and ≤ 10:

screenshot

c. Group by category name, count number of rows in group, average product quantity (product quantity is in order_details.quantity):

screenshot

d. Filter out rows where the average number of items is greater than 21:

screenshot

e. Sort the rows in descending order of number of rows:

screenshot

f. Display (select) four lines with the first line omitted:

screenshot