
- •Практичні завдання
- •2.Робота із запитами Теоретичні відомості
- •Практичні завдання
- •3. Функції маніпулювання даними Теоретичні відомості
- •Практичні завдання
- •Теоретичні відомості
- •Практичні завдання
- •5. Об’єднання таблиць Теоретичні відомості
- •Практичні завдання
- •7. Представлення Теоретичні відомості
- •Практичні завдання
- •8. Індекси. Зовнішній ключ Теоретичні відомості
- •Практичні завдання
- •9. Транзакції Теоретичні відомості
- •Практичні завдання
- •10. Проектування власної бази даних MySql
Практичні завдання
Написати SQL-запити, які дозволяють вивести таку інформацію з БД films:
Вивести всі дані.
Щоб вивести всі данні, переходимо до таблиці films та у пункті меню SQL пишемо запит на вибірку всіх данних:
SELECT *
FROM `film_list`
LIMIT 0 , 30
Вивести лише назви фільмів.
Щоб вивести лише назви фільмів, пишемо:
SELECT name
FROM `film_list`
LIMIT 0 , 30
Вивести лише ті фільми, які були випущені після 2000 року.
Щоб вивести фільми які були випущені після 2000 року, треба в SQL записати такий запит:
SELECT *
FROM `film_list`
WHERE `year`>2000
LIMIT 0 , 30
Вивести фільми, випущені в 1992 та 1993 роках. Для цього виконайте наступний SQL-запит:
Визначити кількість фільмів в таблиці film_list.Використати функцію count.
Щоб визначити кількість фільмів в таблиці film_list, треба виконати такий sql-запит:
select count(*) from `film_list`;
Вивести рік коли знімався найстаріший фільм.Використати функцію min.
Щоб вивести рік коли знімався найстаріший фільм, треба виконати такий sql-запит:
select min(`year`) from `film_list`;
Визначити максимальну різницю між датою випуску фільму та датою його додавання до таблиці. Для цього виконайте наступний SQL-запит:
Визначити скільки фільмів випускалось кожного року. Для цього виконайте наступний SQL-запит:
Створити запит, який показує скільки фільмів випускала країна щороку. Для цього виконайте наступний SQL-запит:
Вивести тільки ті роки, в які було випущено більше 2-х фільмів. Для цього виконайте наступний SQL-запит:
Вивести всю інформацію про фільми, відсортувавши її по полю country (за спаданням) та year(за спаданням).
Щоб вивести всю інформацію про фільми та відсортувати як нам потрібно, треба виконати такий sql-запит:
SELECT *
FROM `film_list`
ORDER BY `country` ASC , `year` DESC
LIMIT 0 , 30
Написати SQL-запити, які дозволяють вивести таку інформаціюз БД phones:
Вивести всіх абонентів, прізвище яких починається на «П». Для цього виконайте наступний SQL-запит:
SELECT * FROM `phone` WHERE `abonent` like 'П%'
Вивести всіх абонентів, прізвище яких закінчується на «ко».
Щоб вивести всіх абонентів, прізвище яких закінчується на «ко», треба виконати такий sql-запит:
SELECT * FROM `phone` WHERE `abonent` like '%ко'
Вивести список прізвищ усіх абонентів-однофамільців, які проживають по вулиці Київській. Список повинен складатися з двох полів: прізвища і кількості людей, які носять це прізвище.
Скільки абонентів обслуговує 43-тя АТС (перші дві цифри номера співпадають з номером АТС).
Для того щоб визначити скільки абонентів обслуговує 43-тя АТС, треба виконати такий sql-запит:
SELECT
COUNT(`abonent`) FROM `phone` WHERE `phone` like '73%';
Вивести номери телефонів і адреси усіх аптек Чернігова.
Щоб вивести номери телефонів і адреси усіх аптек Чернігова, треба в SQL запиті написати:
CREATE TABLE apteka (
`phone` int(11) NOT NULL AUTO_INCREMENT,
`adress` varchar(50) DEFAULT NULL,
PRIMARY KEY (`phone`),
KEY `st_adress` (`adress`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1;
INSERT INTO `phones`.`apteka` (`phone`,`adress`) VALUES (21022,'Московський');
INSERT INTO `phones`.`apteka` (`phone`,`adress`) VALUES (21111,'Київська');
INSERT INTO `phones`.`apteka` (`phone`,`adress`) VALUES (11022,'Одинцова');
INSERT INTO `phones`.`apteka` (`phone`,`adress`) VALUES (22022,'Шевченка');
SELECT `phone`, `adress` FROM `apteka` LIMIT 0,30;
Скільки абонентів у Чернігові мають телефонні номери, що закінчуються на дату вашого народження (не враховуючи рік).
Щоб дізнатися скільки абонентів у Чернігові мають телефонні номери, що закінчуються на дату вашого народження, треба виконати наступний SQL-запит:
SELECT COUNT(`abonent`) FROM`phone` WHERE `phone` LIKE '%2102';