Тема: практические задачи
//// Сообщить об ошибке
==== Пусть имеется таблица оборудования gadgets с названием name и ценой price. Какой запрос вернёт позицию с самой высокой ценой? ====
*
SELECT name FROM gadgets WHERE MAX(price)
*
SELECT name FROM gadgets HAVING MAX(price)
*
SELECT name FROM gadgets WHERE price = (SELECT MAX(price) FROM gadgets)
*
SELECT name FROM gadgets WHERE MAX(price) = (SELECT price FROM gadgets)
==== Столбец name таблицы tbl содержит запись со строкой 'cat'. Укажите запросы, при помощи которых можно извлечь данную запись? ====
*
SELECT * FROM tbl WHERE name LIKE '*';
*
SELECT * FROM tbl WHERE name LIKE '.*';
*
SELECT * FROM tbl WHERE name LIKE '***';
*
SELECT * FROM tbl WHERE name LIKE '_';
*
SELECT * FROM tbl WHERE name LIKE '___';
*
SELECT * FROM tbl WHERE name LIKE '%';
Тема: хранимые процедуры. транзакции.
**Какие способы помогают избежать взаимных блокировок в транзакциях?**
Использование смешанных блокировок
Частые коммиты
Использование только блокировок на чтение (S)
Использование только эксклюзивных блокировок (X)
Тема: практические задачи
**Есть две таблицы:**
**users - таблица с пользователями (users_id, name)**
**orders - таблица с заказами (orders_id, users_id, status)**
**Укажите запрос, который выбирает всех пользователей из таблицы users, у которых больше 5 записей в таблице orders и которые имеют status = 1**
SELECT u.* FROM orders o
JOIN users u ON u.users_id = o.users_id
WHERE COUNT(o.status) > 5 GROUP BY o.users_id
HAVING o.status = 1
----
SELECT u.* FROM orders o
JOIN users u ON u.users_id = o.users_id
WHERE o.status = 1 GROUP BY o.users_id
HAVING COUNT(o.status) > 5
----
SELECT u.* FROM orders o
JOIN users u ON u.users_id = o.users_id
WHERE o.status = 1 AND COUNT(o.status) > 5
GROUP BY o.users_id
----
SELECT u.* FROM orders o
JOIN users u ON u.users_id = o.users_id
WHERE o.status = 1 COUNT(o.status) > 5
==== Что позволяет реализовать репликация master-slave в MySQL? ====
*
Обеспечение атомарности операции записи на несколько серверов
*
Обеспечение целостности данных
*
Обеспечение масштабирования операций записи (INSERT, UPDATE, DELETE)
*
Обеспечение разделения потоков чтения и записи
Сообщение о проблеме
Отправить
Тема: практические задачи
//// Сообщить об ошибке
**Есть таблица компьютеров PC (model, speed, price).**
**Какой запрос выведет:**
**- все компьютеры, с тактовой частотой больше 1500 МГц**
**- среднюю стоимость компьютеров с таким же быстродействием?**
*
SELECT pc.speed, AVG(pc.price) FROM PC WHERE pc.speed > 1500GROUP BY pc.speed
* ''''
SELECT pc.speed, AVG(pc.price) FROM PC HAVING pc.speed > 1500
* ''''
SELECT pc.speed, AVG(pc.price) FROM PC ORDER BY pc.speed HAVING pc.speed > 1500
* ''''
SELECT pc.speed, AVG(pc.price) FROM PC WHERE pc.speed > 1500
''''''''''''''''''''''Сообщение о проблеме''
''''''''Отправить''''