SQL: основы - ответы на тесты Интуит
Все ответы: Проверка знаний синтаксиса и семантики основных конструкций языка SQL.
Сортировка строк полученного в результате выборки отчета:
ORDER ON
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int)
Запрос предназначен для отображения имен и средних баллов по Математике всех студентов. Столбец, указывающий на средний балл по заданной дисциплине (в схеме он называется Math_scope
), должен называться в итоговом отчете "Math_average_scope"
. Итоговый отчет должен быть отсортирован в возрастающем порядке по номерам групп, а внутри групп – по средним баллам по Математике (тоже в порядке возрастания):
Среди приведенных ниже кодов укажите варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу при условии, что столбец Math_scope
не может принимать значение NULL
:
Groups
состоит из следующих кортежей:
Group_id | Grade_level | Specialty_id | Head_stud_id |
ДИ1 | 1 | 120.010 | 10 |
ДИ2 | 2 | 120.010 | 17 |
ВИ1 | 1 | 131.015 | 123 |
ВИ2 | 2 | 131.015 | 15 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Head_stud_id | Grade_level |
10 | 1 |
123 | 1 |
15 | 2 |
17 | 2 |
Head_stud_id | Grade_level |
17 | 2 |
15 | 2 |
123 | 1 |
10 | 1 |
Head_stud_id | Grade_level |
15 | 2 |
17 | 2 |
10 | 1 |
123 | 1 |
Grade_level | Head_stud_id |
2 | 17 |
2 | 15 |
1 | 123 |
1 | 10 |
Назначение транзакции -
Оператор IN
:
AND
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Lincoln | 15 | NULL | 4.3 | 10 |
12 | Li | 28 | 4.2 | 5.0 | 10 |
13 | Lik | 28 | 4.5 | 4.3 | 20 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Student_name |
Lincoln |
Lik |
Student_name |
Li |
Lik |
Student_name |
Lincoln |
Lik |
Li |
Student_name |
Lik |
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int)
Запрос предназначен для получения отчета, содержащего информацию о студентах, для которых помимо имени известна и фамилия (фамилия отделяется от имени символом "_" в столбце Student_name
, например Poll_Zillah
).
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Student_name LIKE “%!_%” ESCAPE ‘!’
Student_name LIKE “%[_]%”
Student_name LIKE ‘%[_]’
Student_name LIKE ‘%?_%’ ESCAPE ‘?’
Student_name LIKE ‘%!_%’ ESCAPE ‘!’
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int)
Запрос предназначен для получения отчета, содержащего имена
студентов группы №10, обладающих общим средним баллом по обеим дисциплинам,
превышающим 9.0, и имена студентов группы № 20, обладающих средним баллом
по дисциплине Математика (Math_scope
), превышающим 4.3.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
LOWER
AVG
LEFT
LTRIM
CAST
SELECT substring (‘TEST’, 2, 3)
Среди представленных вариантов выберите корректный вариант итогового отчета:
(No column name) |
TES |
(No column name) |
(No column name) |
T |
(No column name) |
EST |
ALTER TABLE
DEALLOCATE
DELETE
DROP
ROLLBACK
Students
имеет схему:
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
TO
следует использовать слово INTO
Students
Students
NULL
Students
имеет схему:
Отношение Head
имеет аналогичную структуру.
Требуется добавить в таблицу Head
номер, имя и группу студентов с оценкой по математике более 4.4
Выберите варианты запроса, решающего данную задачу.
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
CONSTRAINT
следует в определении каждого из столбцов f1
и f2
написать PRIMARY KEY
CHARACTER
не может быть первичным ключом CONSTRAINT
написано с ошибкой IN
UNIQUE
SECONDARY KEY
NOT EMPTY
REFERENCES
DELETE TABLE
DROP TABLE
TEMPORARY
Функция AVG
:
NULL
NULL
, если переданное в качестве аргумента выражение или столбец, принимает для одной из строк, обрабатываемых этой функцией, неопределенное значение Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float), Lang_scope (float), Group_id (int).
Запрос предназначен для подсчета числа студентов в 10 группе, не имеющих оценки (среднего балла) по Математике (столбец Math_scope
равен NULL
)
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | 1100 | 10 |
12 | Li | 28 | 4.2 | NULL | 20 |
13 | Alan | 24 | 4.7 | 1300 | 20 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
NULL |
report |
800 |
report |
1200 |
report |
0 |
Фраза HAVING
:
BETWEEN ... AND, LIKE, IN
GROUP BY
или передаются в качестве аргументов в групповые функции этой же фразы (не принимая во внимания подзапросы)
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float), Salary (float, NOT NULL) Group_id (int).
Запрос предназначен для отображения информации о средней стипендии (Salary
) в учебной группе №10 среди студентов, средний балл по Математике (Math_scope
) которых превышает 4.5:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке.
Укажите правильную причину возникновения ошибки.
HAVING
в предложении SELECT
Group_id=10
следует записать во фразе WHERE
HAVING
не может быть составных условий HAVING
не может присутствовать столбец (выражение), которого нет во фразе GROUP BY
, или который не передан в качестве аргумента в групповую функцию Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 4.9 | 1100 | 10 |
12 | Li | 28 | 4.2 | NULL | 20 |
13 | Alan | 24 | 4.7 | 1300 | 20 |
Запрос имеет следующий вид:
report |
4.7 |
report |
4.9 |
report |
4.7 |
4.9 |
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для подсчета числа студентов в каждой учебной группе, которые оценены по всем дисциплинам (В столбцах Math_scope
и Lang_scope
присутствуют некоторые значения).
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope, Group_id (int, FK)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id, Head_stud_id
Запрос, предназначенный для отображения всех студентов второго курса (Groups.Grade_level
), имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
Students
и Groups
SELECT
некорректный префикс в названии столбца Student_name
, вместо полного названия таблицы следовало использовать псевдоним
WHERE
некорректный синтаксис в префиксах названий столбцов, вместо псевдонимов таблиц следовало использовать полные названия таблиц Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope, Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id, Head_stud_id
Запрос SQL предназначен для отображения информации об учебных группах. Отчет должен включать номера учебных групп и имена студентов, обучающихся в этих группах, в отчете также должны быть представлены учебные группы, к которым еще не приписаны никакие студенты (новые учебные группы).
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.
Groups, Students WHERE Students.Group_id = Groups.Group_id
Groups g, Students s WHERE Students.Group_id = Groups.Group_id
Groups g LEFT OUTER JOIN Students s WHERE Students.Group_id = Groups.Group_id
Groups g LEFT OUTER JOIN Students s ON s.Group_id = g.Group_id
Groups g JOIN Students s USING Students.Group_id = Groups.Group_id
Specialties
имеет схему:
Отношение Skills имеет схему:
Skills: Skill_id (int PK), Skill_title
Отношение Specialty_skill имеет схему:
Specialty_skill: Specialty_id (int PK FK), Skill_id (int PK FK)
Запрос SQL предназначен для отображения номеров специальностей, одним из навыков которых является "programming"
.
Какие ключевые слова следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата?
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 3.9 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Отношение Student_grade
состоит из следующих кортежей:
Grade_id | Lowest_avg_scope | Highest_avg_scope |
1 | 8.1 | 9 |
2 | 9.1 | 10 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Student_name | Grade_id |
Tom | 1 |
Alex | 2 |
Student_name | Grade_id |
Tom | 1 |
Tom | 2 |
Alex | 1 |
Alex | 2 |
Student_name | Grade_id |
Student_name | Grade_id |
Alex | 2 |
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | 1100 | 10 |
12 | Li | NULL | 4.2 | NULL | 20 |
13 | Alan | 15 | 4.7 | 1300 | 20 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Alan |
name |
Li |
Alan |
name |
Lincoln |
Alan |
SELECT
SELECT
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float NOT NULL), Group_id (int, FK)
Запрос предназначен для отображения имен студентов, которые имеют оценку по Математике (Math_scope
) не меньше, чем средний балл по этой дисциплине среди всех студентов:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата при условии, что максимальной оценкой является 5.0.
>= AVG(Math_scope)
>= SELECT AVG(Math_scope) FROM Students
>= (SELECT AVG(Math_scope) FROM Students)
BETWEEN (SELECT AVG(Math_scope) FROM Students) AND 5.0
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | 0 | 10 |
15 | Li | NULL | 4.2 | 1100 | 20 |
13 | Alan | 15 | 4.7 | 1300 | 20 |
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Lincoln |
name |
Lincoln |
Li |
name |
Lincoln |
Li |
Alan |
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 3.9 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Запрос SQL имеет вид:
При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
name
должен быть записан без кавычек
SELECT
и WHERE
должен предшествовать префикс "s"
>
может применяться только для однострочных подзапросов
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Salary (float NOT NULL), Group_id (int, FK)
Запрос предназначен для отображения имен студентов, стипендия которых (Salary)
превышает стипендию каждого студента, обучающегося в группе 20.
Укажите оператор сравнения, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:
>
> ANY
> ALL
> IN
Student_grade
имеет схему:
Student_grade: Grade_id (int PK), Lowest_avg_scope (float), Highest_avg_scope (float)
Отношение Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int, FK)
Запрос предназначен для отображения имен студентов, рейтинг которых (Grade_id
) попадает в первую категорию. Категория рейтинга определяется на основе выражения (Math_scope + Lang_scope
)/2
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
Оператор IN
:
= ANY
=, <>, >=
и т.д.) Оператор UNION
:
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 3.9 | 4.3 | 10 |
12 | Peter | 28 | 4.2 | 5.0 | 10 |
Отношение Students1
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tomas | 13 | 4.9 | 4.3 | 20 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
5 |
5 |
name |
5 |
name |
Tom |
name |
3 |
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope, Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id, Head_stud_id
Запрос предназначен для отображения совпадающих номеров студентов и групп
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
EXCEPT
INTERSECTION
UNION
INTERSECT
EXIST
NULL
:
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float), Group_id (int, FK)
Запрос SQL предназначен для выборки всех столбцов из таблицы Students
:
Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу.
ALL
Student_name, Student_id, Group_id, Head_stud_id AS head, Math_scope
ALL ROWS
*
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 5.0 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Запрос SQL предназначен для выборки всех имен студентов и их успеваемости по двум дисциплинам из таблицы Students
и сортировки итогового отчета в порядке возрастания номеров групп, а внутри групп – в порядке возрастания суммарных баллов по двум дисциплинам:
При выполнении запроса сервер БД генерирует ошибку. Среди предложенных вариантов укажите правильную причину ошибки:
ORDER BY
, не заключен в двойные кавычки ORDER BY
может присутствовать название только одного столбца или выражения Math_scope
+ Lang_scope
не заключено в скобки summ scope
" должен отделяться от выражения пробелом, а не предлогом AS
ORDER BY
не допускается использование псевдонимов столбцов Транзакция завершается оператором
CANCEL
COMMIT
END
ROLLBACK
SUBMIT
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int)
Запрос предназначен для отображения имен ВСЕХ студентов, суммарный средний балл которых (Math_scope + Lang_scope
) от 8.2 и выше (максимальный средний балл по каждой из дисциплин – 5).
Среди приведенных ниже кодов укажите варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу
Math_scope + Lang_scope IN (8.2, 10)
Math_scope + Lang_scope BETWEEN 8.2 AND 10
(Math_scope >= 4.1 AND Lang_scope >= 4.1) OR (Math_scope >= 4.0 AND Lang_scope >= 4.2)
Math_scope + Lang_scope > 8.1
Math_scope + Lang_scope >= 8.2
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для получения отчета, содержащего информацию о всех студентах, имена которых начинаются с символов "А", "В" и "С".
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Student_name LIKE ‘A%’ AND Student_name LIKE ‘B%’ AND Student_name LIKE ‘C%’
Student_name >= 'A' AND Student_name <= 'C'
Student_name < 'D' AND Student_name >= 'A'
Student_name LIKE "A%" OR Student_name LIKE "B%" OR Student_name LIKE "C%"
Student_name LIKE 'C%' OR Student_name LIKE 'A%' OR Student_name LIKE 'B%'
Оператор ESCAPE
:
LIKE
BETWEEN
… AND
, конкретных значений
IN
, конкретных значений
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int NOT NULL), Specialty_id (int FK), Head_stud_id
Запрос предназначен для нахождения всех учебных групп (Group_id
) студентов 4 и 5 курсов (Grade_level
), обучающихся по специальности 123, а также учебных групп студентов 1 и 2 курсов, обучающихся по специальности 11.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
NVL
ISNULL
CAST
AVG
RTRIM
CURRENT_TIMESTAMP
UPDATE
Students
имеет схему:
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
DELETE
не могут указываться отдельные столбцы, удаляется всегда строка целиком DELETE
не соответствует порядку столбцов таблицы Students
Math_scope
в список столбцов после слова DELETE
IS
следует заменить на знак "=" Math_scope
не может принимать значение NULL
Students
имеет схему:
Требуется удалить записи о студентах, являющимися старостами (Head_stud_id
- номер студента-старосты).
Выберите варианты запроса, решающего данную задачу.
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
CONSTRAINT
NOT NULL
и UNIQUE
для столбца f2
следует записать одно - PRIMARY KEY
NOT NULL
и UNIQUE
PRIMARY KEY
NOT NULL
UPDATE
DROP COLUMN
Функция COUNT
:
NULL
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Exam_date | Group_id |
11 | Lincoln | 15 | NULL | NULL | 10 |
12 | Li | 28 | 4.2 | 12.09.2003 | 10 |
Запрос имеет следующий вид:
При попытке выполнить запрос сервер генерирует ошибку. Укажите правильную причину ошибки:
MAX
не может принимать выражение в качестве аргумента
ORDER BY
не допускается использование псевдонимов
GROUP BY
MAX
не может быть вложенной в групповую функцию AVG
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | 1100 | 10 |
12 | Li | 28 | NULL | NULL | 20 |
13 | Alan | 24 | 4.7 | 1300 | 20 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
2.3 |
report |
0 |
report |
NULL |
report |
no rows selected |
Фраза GROUP BY
:
WHERE
SELECT
помимо групповой функции присутствует название какого-либо столбца или выражение
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Lincoln | 15 | 3.4 | 5.0 | 10 |
12 | NULL | 28 | 4.2 | 4.3 | 10 |
Запрос SQL имеет вид:
При попытке выполнить запрос, сервер БД генерирует ошибку. Укажите правильную причину ошибки:
WHERE
является недопустимой, вместо нее следует использовать фразу HAVING
WHERE
должна следовать после фразы GROUP_BY
AVG
не существует SELECT
не может быть столбцов, которых нет во фразе GROUP BY
(не принимая во внимания те столбцы, которые передаются в качестве аргументов в групповые функции) Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 4.9 | 1100 | 10 |
12 | Li | 28 | 4.2 | 1200 | 20 |
13 | Alan | 24 | 4.7 | 1300 | 20 |
14 | Tom | 24 | 4.6 | 1600 | 20 |
Запрос имеет следующий вид
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
1100 |
1200 |
1600 |
report |
1100 |
1600 |
report |
NULL |
report |
1100 |
1200 |
1300 |
1600 |
Specialties
состоит из следующих кортежей:
Specialty_id | Specialty_title | Specialty_rating |
11.01.15 | Accounting | 9.8 |
12.03.14 | Engineering | 6.2 |
… | … | … |
Запрос предназначен для определения среднего рейтинга в каждой группе специальностей (математической, экономической, юридической и т.д.). Каждая группа специальностей характеризуется двумя первыми цифрами в столбце Specialty_id
.
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
Внешнее соединение:
LEFT (RIGHT, FULL) OUTER JOIN
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope, Group_id (int, FK)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id, Head_stud_id
Запрос, предназначенный для отображения всех студентов с указанием их года обучения, имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
SELECT
пропущен префикс в названии столбца Grade_level
JOIN
не может использоваться для организации эквисоединений
JOIN
должен использоваться вместо оператора FROM
USING
следует использовать ключевое слово ON
Specialties
имеет схему:
Specialties: Specialty_id (int, PK), Specialty_title, Specialty_rating
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id
Запрос SQL предназначен для отображения информации об учебных группах. Отчет должен включать номера учебных групп и номера соответствующих им специальностей. В отчет должны попасть учебные группы, которым еще не поставлены в соответствие никакие специальности, а также новые специальности, не установленные ни для каких групп.
Выберите из предложенных вариантов тот, которые при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.
Groups g, Specialties WHERE Groups.Group_id = Specialties.Group_id
Groups g LEFT OUTER JOIN Specialties s ON g.Group_id = s.Group_id
Groups g FULL OUTER JOIN Specialties ON g.Group_id = Specialties.Group_id
Groups g JOIN Specialties USING Specialties.Group_id = Groups.Group_id
Groups g FULL OUTER JOIN Specialties s ON Groups.Group_id = Specialties.Group_id
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id
Отношение Students
имеет схему:
Students: Student_id (int, PK), Student_name (NOT NULL), Head_stud_id, Math_scope, Group_id (int, FK)
Запрос SQL предназначен для отображения номеров учебных групп и числа студентов, обучающихся в каждой группе. Если в группе нет ни одного студента, в отчете напротив названия этой группы, должно находиться значение 0.
Какие фрагменты кода следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 3.9 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Отношение Student_grade
состоит из следующих кортежей:
Grade_id | Lowest_avg_scope | Highest_avg_scope |
1 | 8.1 | 9 |
2 | 9.1 | 10 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Student_name | Grade_id |
Tom | 1 |
Alex | 2 |
Student_name | Grade_id |
Alex | 2 |
Student_name | Grade_id |
Tom | 1 |
Tom | 2 |
Alex | 1 |
Alex | 2 |
Student_name | Grade_id |
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 12 | 2.3 | 1100 | 10 |
12 | Li | NULL | 4.2 | NULL | 20 |
13 | Alan | 15 | 4.7 | 1300 | 20 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name | report |
Li | 2 |
name | report |
Li | 1 |
name | report |
Li | 0 |
SELECT
Specialties
имеет схему:
Specialties: Specialty_id (int, PK), Specialty_title, Specialty_rating
Запрос предназначен для отображения названий всех специальностей с рейтингом, превышающим рейтинг специальности 201123:
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.
=> ANY(SELECT Specialty_rating FROM Specialties WHERE Specialty_id=201123)
> (SELECT Specialty_rating FROM Specialties WHERE Specialty_id=201123)
> SELECT Specialty_rating FROM Specialties WHERE Specialty_id=201123
IN (SELECT Specialty_rating FROM Specialties WHERE Specialty_id=201123)
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | NULL | 10 |
15 | Li | NULL | 4.2 | 1100 | 20 |
13 | Alan | 15 | 4.7 | 1300 | 20 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name1 | name2 |
Lincoln | Li |
name1 | name2 |
Li | Lincoln |
Li | Alan |
name1 | name2 |
Lincoln | Li |
Alan | Li |
name1 | name2 |
Li | Lincoln |
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 3.9 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Запрос SQL имеет вид:
При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
s
> ANY
может применяться только для многострочных подзапросов
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float), Group_id (int, FK)
Запрос предназначен для отображения имен студентов, оценка по Математике (Math_scope
) которых равна средней оценке по этой дисциплине в одной из учебных групп 10 или 20.
Укажите операторы сравнения, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
= ANY
IN LIST
= LIST
IN
Specialties
имеет схему:
Specialties: Specialty_id (int, PK), Specialty_title, Specialty_rating
Отношение Skills
имеет схему:
Skills: Skill_id (int PK), Skill_title
Отношение Specialty_skill
имеет схему:
Specialty_skill: Specialty_id (int PK FK), Skill_id (int PK FK)
Запрос предназначен для отображения названий специальностей, которые предполагают получение обучающимся навыка "system integrator":
При выполнении данного запроса сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки.
EXISTS
EXISTS
пропущен префикс столбца Skill_title
EXISTS
не может использоваться для соединения строк из нескольких таблиц "Specialties"
в первом условии подзапроса EXISTS
должен быть заменен на символ "s" Оператор ALL
:
=, <>, >=
и т.д.) ALL
ALL
Оператор EXCEPT
:
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tomas | 15 | 3.9 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Отношение Specialties
состоит из следующих кортежей:
Specialty_id | Specialty_title | Specialty_rating |
11.01.15 | Account | 9.8 |
12.03.14 | Sales | 6.2 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Tomas |
Sales |
name |
Alex |
Account |
name |
Tomas |
Alex |
Account |
Sales |
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope, Group_id (int)
Отношение Instructors
имеет схему:
Instructors: Instructor_id (int PK), Instructor_name, Length_of_work
Запрос предназначен для отображения имен учителей, которые не встречаются среди имен студентов
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
INTERSECT
UNION
INTERSECTION
NOT EXISTS
EXCEPT
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | NULL | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | NULL |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
sum |
4.3 |
9.2 |
sum |
0 |
9.2 |
(No column name) |
NULL |
9.2 |
sum |
NULL |
9.2 |
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int NOT NULL), Specialty_id (int FK), Head_stud_id
Запрос SQL предназначен для выборки всех номеров специальностей из таблицы Groups
, в итоговом отчете указанный столбец должен иметь название Specialty number
:
Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.
ALL EXCEPT FOR Group_id, Grade_level, Head_stud_id
Specialty_id AS Specialty number
Specialty_id AS “Specialty number”
Specialty_id AS ‘Specialty number’
Specialty_id “Specialty number”
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int)
Запрос SQL предназначен для подсчета общего среднего балла (по обеим дисциплинам) для каждого студента, результат должен быть отсортирован в порядке убывания общих средних баллов:
Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу, при условии, что столбцы Math_scope
и Lang_scope
не могут принимать значение NULL
.
Оператор ROLLBACK
= NULL
IS NULL
(проверка неопределенных значений) BETWEEN VALUES
(в интервале)
INSIDE
(в списке) LIKE
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 4.2 | 4.3 | 10 |
12 | Alex | 28 | NULL | 5.0 | 10 |
Запрос SQL предназначен для выборки всех имен студентов, у которых средний балл по Математике (Math_scope
) больше 4.5 или не определен:
В результате запроса отбираются обе строки, хотя согласно условию должна быть отобрана лишь вторая строка (Student_id=12
). Объясните причины получения некорректного результата:
IS (NOT) NULL
следовало использовать оператор NOT EQUALS (EQUALS)
IS (NOT) NULL
следовало использовать оператор (!=)
или (=)
IS (NOT) NULL
следовало использовать оператор (<>)
или (=)
(OR, AND)
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Mis_days | Group_id |
11 | Tom | 15 | 4.5 | 8% | 10 |
12 | Alex | 28 | 4.2 | 13 | 10 |
… | … | … | … | … | … |
Запрос предназначен для получения отчета, содержащего информацию о студентах, количество пропусков занятий которых указано в процентах от общего числа занятий (значение в столбце Mis_days
заканчивается знаком %). Столбец Mis_days
имеет тип VARCHAR
.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Mis_days LIKE ‘%ESCAPE%’
Mis_days LIKE ‘ %”%” ’
Mis_days LIKE ‘%!%’ ESCAPE ‘!’
Mis_days LIKE “%?%” ESCAPE "?"
Mis_days LIKE ‘%?%’ ESCAPE '?'
у1, у2, у3
являются истинными, а условия x1, x2, x3
– ложными.
Какие из перечисленных комплексных условий во фразе WHERE
будут истинными:
y1 and (x1 or y2)
y2 and x2 or x1 or x3
у1 and x1 or у2 and x2 or у3 and x3
1 and (x1 or у2) and (x2 or у3) or x3
Specialties
состоит из следующих кортежей:
Specialty_id | Specialty_title | Specialty_rating |
11.01.15 | Accounting | 9.8 |
12.03.14 | Engineering | 6.2 |
… | … | … |
Запрос предназначен для получения наименований техничеких специальностей (т.е специальностей, значения в столбце Specialty_id
которых начинаются с цифр 11), рейтинг которых превышает 8 и экономических специальностей (первые цифры в столбце Specialty_id
- 12) с рейтингом менее 7.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата при условии, что столбцы Specialty_id
и Specialty_rating
не могут принимать значение NULL
и значения в столбце Specialty_id
имеют фиксированную ширину – 8 символов:
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 4.7 | 1000 | 10 |
12 | Li | 28 | 4.2 | 1000 | 20 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Student_name | New sal |
Lincoln | 1100 |
Li | 1200 |
Student_name | New sal |
Lincoln | 1000 |
Li | 1000 |
Student_name | New sal |
Lincoln | NULL |
Li | NULL |
SELECT REPLACE (LOWER (‘Alex’), ‘a’, ‘B’)
Среди представленных вариантов выберите корректный вариант итогового отчета:
(No column name) |
BLEX |
(No column name) |
blex |
(No column name) |
alex |
(No column name) |
Blex |
INSERT
Students
имеет схему:
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
UPDATE
должен следовать перечень изменяемых столбцов FROM
TO
следует использовать знак "=" TO
следует использовать IS
AND
следует заменить на OR
Students
имеет схему:
Требуется увеличить на 1.0 балл по иностранному языку и перевести в группу 13 студентов из группы 5. Выберите варианты запроса, решающего поставленную задачу.
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
v
и слово AS
следует поменять местами SELECT
следует заключить в круглые скобки SELECT
перед точкой должно указываться имя столбца, а после точки - имя таблицы t1
и t2
в подзапросе на связаны между собой с помощью JOIN
или WHERE
DEFAULT
NOT NULL
VIEW
)SELECT
CREATE TEMPORARY TABLE
Групповые функции:
NULL
, если переданное в качестве аргумента выражение или столбец, принимает для одной из строк, обрабатываемых функцией, неопределенное значение
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float NOT NULL), Lang_scope (float), Group_id (int)
Запрос предназначен для получения среднего балла по Математике (Math_scope) среди всех учащихся
Выберите из предложенных вариантов тот, который обеспечивает получение требуемого результата.
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | 1100 | 10 |
12 | NULL | 28 | NULL | NULL | 20 |
13 | Alberta | 24 | 4.7 | 1100 | 20 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
2 |
report |
0 |
report |
NULL |
report |
1 |
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float, NOT NULL), Lang_scope (float), Group_id (int)
Запрос предназначен для получения среднего балла по Математике у студентов 10 группы. Расчет должен учитывать всех студентов заданной учебной группы.
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата, при условии, что столбец Math_scope
имеет тип данных float
.
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id, Math_scope (float), Lang_scope (float), Group_id (int)
Запрос имеет следующий вид:
При попытке выполнить запрос сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
NULL
WHERE
не могут использоваться групповые функции (если не принимать во внимание подзапросы) SELECT
не допускается использование столбцов и выражений, если там присутствуют групповые функции GROUP BY
следовало использовать ключевое слово GROUP
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 3 | 15.0 | 10 |
12 | Glint | 28 | 4.5 | NULL | 10 |
13 | Foltrig | 28 | 4.5 | NULL | 10 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
4 |
report |
3.75 |
report |
4.5 |
report |
3 |
Эквисоединение:
NULL
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Tel_nom (bigint), Math_scope, Group_id (int, FK)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id, Head_stud_id, Tel_nom (varchar)
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
JOIN
не может использоваться для организации эквисоединений
JOIN
(ключевого слова ON
не существует)
SELECT
пропущен префикс в названии столбца Student_name
Tel_nom
в отношениях Students
и Groups
обладают разными типами, неявное преобразование которых оказалось невозможным
Specialties
имеет схему:
Specialties: Specialty_id (int, PK), Specialty_name(UNIQUE), Specialty_rating
Отношение Skills
имеет схему:
Skills: Skill_id (int PK), Skill_title
Отношение Specialty_skill
имеет схему:
Specialty_skill: Specialty_id (int PK FK), Skill_id (int PK FK)
Запрос SQL предназначен для отображения наименований специальностей с общим числом соответствующих им навыков (Skill_id
) не менее 5.
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
первый и второй фрагмент: USING
третий фрагмент: GROUP BY Specialty_name HAVING COUNT(Skills.Skill_id) >= 5
Student_grade
имеет схему:
Student_grade: Grade_id (int PK), Lowest_avg_scope (float), Highest_avg_scope (float)
Отношение Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float NOT NULL), Lang_scope (float NOT NULL), Group_id (int, FK)
Запрос SQL предназначен для отображения имен студентов, учебный рейтинг которых (Grade_id
) более 3.
Какие фрагменты кода можно вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 3.9 | 4.3 | NULL |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Отношение Groups состоит из следующих кортежей:
Group_id | Grade_level | Specialty_id | Head_stud_id |
10 | 1 | 120.010 | 10 |
20 | 2 | 120.010 | 17 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Student_name | Grade_id |
Alex | 10 |
NULL | 20 |
Student_name | Grade_id |
Alex | 10 |
Student_name | Grade_id |
Tom | NULL |
Alex | 10 |
NULL | 20 |
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 16 | 4.1 | 1100 | 10 |
15 | Li | NULL | 4.2 | NULL | 20 |
13 | NULL | 15 | 4.7 | 1300 | 20 |
16 | Tom | NULL | 4.0 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name | scope |
Li | 4.2 |
name | scope |
No rows selected |
name | report |
Li | 4.2 |
Li | 4.0 |
FROM
данного подзапроса FROM
таблицы, уже использующиеся во внешнем запросе Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Salary (float), Group_id (int, FK)
Запрос предназначен для отображения имен студентов, имеющих стипендию ниже среднего значения стипендии по всем студентам
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
< ANY(SELECT AVG(Salary) FROM Students)
< (SELECT AVG(Salary) FROM Students)
< SELECT AVG(Salary) FROM Students
< “SELECT AVG(Salary) FROM Students”
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | NULL | 10 |
15 | Li | NULL | 4.2 | 1100 | 20 |
13 | Alan | 15 | 4.7 | 1300 | 20 |
Отношение Groups
состоит из следующих кортежей:
Location_id | Country_name | City_name | Street |
10 | 1 | 120.010 | 10 |
20 | 2 | 120.010 | 17 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name1 |
Lincoln |
Li |
Alan |
name1 |
Lincoln |
name1 |
Li |
Alan |
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tom | 15 | 3.9 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Запрос SQL имеет вид:
При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
> ANY
может применяться только для многострочных подзапросов
Students
в главном запросе не может иметь псевдоним
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope (float), Group_id (int, FK)
Запрос предназначен для отображения номеров учебных групп численностью более чем группы 15 и 20.
Укажите операторы сравнения, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
> ALL
> ANY
> LIST
> IN
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Salary | Group_id |
11 | Lincoln | 15 | 2.3 | NULL | 10 |
15 | Li | NULL | 4.2 | 1100 | 20 |
13 | Alan | 15 | 4.7 | 1300 | 20 |
Отношение Groups
состоит из следующих кортежей:
Group_id | Grade_level | Specialty_id | Head_stud_id |
10 | 1 | 120.010 | 10 |
20 | 2 | 120.010 | 17 |
Запрос SQL имеет вид
:Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Lincoln |
name |
Li |
Alan |
name |
Lincoln |
Li |
Alan |
Оператор ANY
:
=, <>, >=, <=, <,>
) ANY
ANY
Оператор ANY
:
=, <>, >=, <=, <, >
) ANY
ANY
Students
состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Tomas | 15 | 3.9 | 4.3 | 10 |
12 | Alex | 28 | 4.2 | 5.0 | 10 |
Отношение Specialties
состоит из следующих кортежей
Specialty_id | Specialty_title | Specialty_rating |
11.01.15 | Accounting | 9.8 |
12.03.14 | Engineering | 6.2 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Tom |
Engineering |
name |
Tom |
Alex |
Accounting |
Engineering |
name |
Alex |
Accounting |
Students
имеет схему:
Students: Student_id (int, PK), Student_name, Head_stud_id, Math_scope, Group_id (int)
Отношение Instructors
имеет схему:
Instructors: Instructor_id (int PK), Instructor_name, Length_of_work
Запрос предназначен для отображения имен учителей, которые встречаются среди имен студентов
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
UNION
INTERSECT
INTERSECTION
EXCEPT
EXIST
Оператор SELECT
-
SQL
, предназначенный для организации запросов на выборку данных DML
(язык манипулирования данными) в качестве подзапросов DML
(язык манипулирования данными) при организации подзапросов DDL
(язык определения данных) Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1100 | NULL | 10 | 20.05.98 |
12 | Alex | 17 | 900 | 0.5 | 20 | 21.06.98 |
Запрос предназначен для отображения имен и суммарного дохода (оклад + премия) всех сотрудников:
В результате выполнения запроса сервер БД генерирует ошибку
Выберите из предложенных вариантов тот, который правильно объясняет возникновение ошибки:
Commission_pct
принимает для одной из записей значение NULL
AS
, может применяться только к столбцам, но не к арифметическим выражениям, как в данном примере AS
, должен быть заключен в двойные кавычки или в апострофы ORDER BY
не допускается использование арифметических выражений Worker
имеет схему:
Запрос предназначен для отображения имен и суммарного дохода (оклад + премия) всех сотрудников, результат должен быть отсортирован в порядке возрастания общих доходов:
Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу.
(Salary+Salary*Commission_pct) AS total_income
второй фрагмент: total_income ASK
(Salary+Salary)*Commission_pct AS total_income
второй фрагмент: (Salary+Salary)*Commission_pct
Salary+Salary*Commission_pct AS “total_income”
второй фрагмент: Salary+Salary*Commission_pct
Транзакция - это
Оператор LIKE
:
WHERE
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1100 | NULL | 10 | 20.05.98 |
12 | Sam | 15 | 800 | 0.2 | ||
13 | Alex | 17 | 900 | 0.5 | 20 | 21.06.98 |
14 | Jack | 17 | 1500 | 0.5 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Worker_name |
Tоm |
Alex |
Jack |
Worker_name |
Alex |
Tоm |
Worker_name |
Alex |
Jack |
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1100 | 34% | 10 | 20.05.98 |
12 | Alex | 17 | 900 | 0.2 | 20 | 21.06.98 |
… | … | … | … | … | … | … |
Запрос предназначен для получения отчета, содержащего информацию о сотрудниках, размер премии которых указан в процентах от оклада (значение в столбце Commission_pct
заканчивается знаком %). Столбец Commission_pct
имеет тип VARCHAR
.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Commission_pct LIKE AS ‘%!%’ ESCAPE ‘!’
Commission_pct LIKE ‘%!%’ ESCAPE ‘!’
Commission_pct LIKE ‘%?%’ ESCAPE ‘?’
Commission_pct LIKE ‘ %”%” ’
Commission_pct LIKE ‘%ESCAPE%’
Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int)
Запрос предназначен для нахождения всех отделов компании (Branch_title)
которые в своем названии содержат слово "Account" или "Sales", и значение в столбце Location_id
которых равно 11, а также отделов, в названии которых содержится слово "Research".
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата при условии, что столбцы Branch_title
и Location_id
не могут принимать значение NULL
:
POSITION
UPPER
ADD
ALTER TABLE
COMMIT
INSERT
SET
Worker
имеет схему:
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
INTO
следует использовать слово IN
Worker
Worker
NULL
Worker
имеет схему:
Отношение Manager
имеет аналогичную схему.
Требуется добавить в таблицу Manager
данные о номере, фамилии, зарплате и номере отдела сотрудников с зарплатой более 1000. Выберите варианты запроса, решающие поставленную задачу.
CREATE TABLE
DDL
(язык определения данных) содержит операторы:CREATE VIEW
DELETE TABLE
UPDATE TABLE
CREATE TABLE
ALTER VIEW
CHAR
FLOAT
INTEGER
TIMESTAMP
VARCHAR
SQRT
AVG
COUNT
MIN
SIN
Worker
имеет схему:
Запрос предназначен для определения разницы максимального и минимального окладов среди сотрудников 10-го отдела
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение поставленной задачи
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 17 | 1000 | 0.5 | 10 | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
13 | James | 19 | 900 | NULL | 10 | NULL |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета, при условии, что столбец Manager_id
имеет тип данных int
:
report |
NULL |
report |
2 |
report |
3 |
report |
1 |
Worker
имеет схему:
Запрос предназначен для отображения информации о среднем окладе (Salary
) в отделе №10 среди сотрудников, которые подчиняются менеджеру с номером 17:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке.
Укажите правильную причину возникновения ошибки при условии, что столбец Salary
имеет тип данных float
.
AVG
используется недопустимый модификатор ALL
HAVING
не может быть составных условий
HAVING
присутствует столбец, по которому не осуществляется группировка и который не передается в качестве аргумента в групповую функцию
HAVING
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 17 | 1000 | 0.5 | 20 | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
13 | James | NULL | 900 | NULL | 10 | NULL |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
1000 |
report |
1000 |
9000 |
Worker
имеет схему:
Запрос предназначен для получения распределения по должностям в отделах 10 и 30 (сколько сотрудников занимает каждую должность). Упорядочивание строк и столбцов значения не имеет.
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
Не-эквисоединение:
Worker
имеет схему:
Отношение Branch
имеет схему:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
SELECT
пропущен префикс в названии столбца Branch_title
SELECT
и во фразе ON
вместо полных названий таблиц в префиксах названий столбцов следовало использовать псевдонимы таблиц, заданные во фразах FROM
и JOIN
ON
следовало использовать ключевое слово USING
JOIN
не допускается использование псевдонимов
Worker
имеет схему:
Отношение Skills
имеет схему:
Skills: Skill_id (int PK), Skill_title
Отношение Worker_skill
имеет схему:
Worker_skill: Worker_id (int PK FK), Skill_id (int PK FK)
Запрос SQL предназначен для отображения имен сотрудников с общим числом соответствующих им навыков (Skill_id
). В отчет должны попасть сотрудники, обладающие не менее 3 навыками.
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
Worker_grade
имеет схему:
Worker_grade: Grade_id (int PK), Lowest_sal (float), Highest_sal (float)
Отношение Worker
имеет схему:
Запрос SQL предназначен для отображения имен сотрудников, оклад которых относится к категории 4 и выше.
Какие фрагменты кода следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 17 | 1000 | 0.5 | NULL | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
Отношение Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Research | 12 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Worker_name | Branch_id |
Alex | 20 |
NULL | 10 |
Worker_name | Branch_id |
NULL | 10 |
Worker_name | Branch_id |
Tom | NULL |
Alex | 20 |
NULL | 10 |
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1100 | NULL | 10 | 20.05.98 |
15 | Sam | NULL | 800 | 0.2 | 21.06.98 | |
13 | Alex | 17 | 900 | 0.5 | 20 | 23.06.98 |
17 | Jack | NULL | 1500 | 0.5 | 23.01.98 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name | scope |
No rows selected |
worker | manager |
Tom | Sam |
Alex | Jack |
worker | manager |
Tom | Sam |
worker | manager |
Alex | Jack |
HAVING
, если в качестве правого операнда используется многострочный подзапрос:
IN
ANY
= ANY
Worker
имеет схему
Запрос предназначен для отображения имен сотрудников, имеющих оклад ниже среднего значения оклада по всем сотрудникам компании
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
< (SELECT AVG(Salary) FROM Worker)
< SELECT AVG(Salary) FROM Worker
< ANY (SELECT AVG(Salary) FROM Worker)
< “SELECT AVG(Salary) FROM Worker”
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 17 | 1000 | 0.5 | 10 | 20.05.98 |
12 | Alexander | 17 | 900 | NULL | 20 | 21.06.98 |
Отношение Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Research | 12 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name1 |
Tom |
Alexander |
name1 |
Tom |
name1 |
Alexander |
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 17 | 1000 | 0.5 | 10 | 20.05.98 |
12 | Alexander | 17 | 900 | NULL | 20 | 21.06.98 |
Запрос SQL имеет вид
При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
> ANY
может применяться только для многострочных подзапросов
Worker_name
во фразе SELECT
главного запроса может быть только полное имя таблицы.
Worker
имеет схему:
Запрос предназначен для отображения номеров отделов компании численностью более численности отделов 10 и 20, и со средним окладом более, чем средний оклад в отделе 30.
Укажите операторы сравнения, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
первый фрагмент: > ALL, второй фрагмент: >
первый фрагмент: >, второй фрагмент: >
первый фрагмент: > ANY, второй фрагмент: >
первый фрагмент: > ALL, второй фрагмент: > ALL
Worker_grade
имеет схему:
Worker_grade: Grade_id (int PK), Lowest_sal (float), Highest_sal (float)
Отношение Worker
имеет схему:
Запрос предназначен для отображения имен сотрудников, уровень зарплаты которых (Grade_id
) попадает в первую категорию:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
Оператор (NOT) EXISTS
:
INTERSECTION
INTERSECT
EXCEPT
EXCEPTION
UNION
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Robert | 17 | 1000 | 0.5 | 10 | 20.05.98 |
12 | Alexander | 17 | 900 | NULL | 20 | 21.06.98 |
Отношение Worker1
состоит из следующих кортежей:
12 | Alexis | 17 | 1200 | NULL | 20 | 29.06.98 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
6 |
6 |
name |
Robert |
Alexis |
name |
9 |
name |
6 |
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name, Position, Salary, Commission_pct, Branch_id (int, FK)
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title, Location_id
Запрос предназначен для отображения общего списка имен сотрудников и названий отделов
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
INTERSECT
INTERSECTION
EXIST
EXCEPT
UNION
Ключевое слово DISTINCT
, следующее за ключевым словом SELECT
:
SQL
на необходимость обязательного применения индексов участвующих в запросе столбцов SELECT
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1100 | 0.5 | 10 | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
commission |
550 |
NULL |
(No column name) |
550 |
NULL |
commission |
550 |
0 |
commission |
550 |
900 |
Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Research | 12 |
30 | Accounting | 12 |
40 | Research | 11 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Branch_title | Location_id |
Research | 11 |
Research | 12 |
Accounting | 11 |
Accounting | 12 |
Branch_title | Location_id |
Research | 12 |
Research | 11 |
Accounting | 12 |
Accounting | 11 |
Branch_title | Location_id |
Accounting | 11 |
Accounting | 12 |
Research | 11 |
Research | 12 |
Branch_title | Location_id |
Accounting | 12 |
Accounting | 11 |
Research | 12 |
Research | 11 |
Если какой-то оператор транзакции не выполнился, то
IN
(в списке)
BETWEEN AND
(в интервале)
NOT EQUALS
(не равно) LIKE AS
(поиск по шаблонам) Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Research | 12 |
30 | Accounting | 12 |
40 | Banking | 11 |
Запрос предназначен для отображения всех номеров отделов, названия которых начинаются с символа "А"
Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.
Branch_title = ‘A%’
Branch_title BETWEEN ‘A’ AND ‘B’ AND Branch_title <’B’
Branch_title LIKE ‘A%’
Branch_title LIKE ‘A?%’
Branch_title >= ‘A%’ AND < ‘B’
Worker
имеет схему:
Запрос предназначен для получения отчета, содержащего информацию обо всех сотрудниках, имена которых начинаются с символов "А", "В" и "С".
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Worker_name LIKE AS ‘[A-C] %’
Worker_name LIKE ‘[ABC]’
Worker_name < 'C' OR Worker_name LIKE 'C%'
Worker_name LIKE 'C%' OR Worker_name LIKE 'A%' OR Worker_name LIKE 'B%'
Worker_name LIKE ‘[ABC] %’
у1, у2, у3
являются истинными, а условия x1, x2, x3
– ложными.
Какие из перечисленных комплексных условий во фразе WHERE
будут истинными:
x1 or x2 and y2 or y1
(y3 and (y1 and(x3 or not y2))) or (x3 and (y1 or y3))
у1 and not x1 or у2 and x2 or not у3 and x3
(x1 and y1 or y2) or (x2 and (y1 or y3))
Worker
имеет схему:
Запрос предназначен для поиска сотрудников 10 отдела, общий доход которых (Salary + Salary*Commission_pct)
превышает 1500, и сотрудников 20 отдела с общим доходом, меньшим 1000
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 10 | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
Запрос имеет следующий вид:
При попытке выполнения запроса сервер БД генерирует ошибку, среди предложенных вариантов выберите действие, выполнение которого позволит устранить ошибку:
WHEN
использовать ключевое слово IF
THEN
во фразах WHEN
END
после псевдонима new_sale
END
перед предлогом AS
AS new_sale
IN
POSITION
SUBSTRING
EXTRACT
CONCAT
DELETE
Worker
имеет схему:
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
DELETE
не могут указываться отдельные столбцы, удаляется всегда строка целиком DELETE
не соответствует порядку столбцов таблицы Worker
Salary
в список столбцов после слова DELETE
IS
следует заменить на знак "=" Salary
не может принимать значение NULL
Worker
имеет схему:
Требуется удалить записи о сотрудниках, являющихся менеджерами. Выберите варианты запроса, решающего поставленную задачу.
CREATE TABLE
FOREIGN KEY
NOT NULL
REFERENCES
BOOLEAN
FLOAT
INTEGER
NUMERIC
SMALLINT
SQRT
SUM
COUNT
MAX
COS
Worker
имеет схему:
Запрос имеет следующий вид:
При попытке выполнить запрос сервер генерирует ошибку. Укажите правильную причину ошибки:
AVG
не может принимать выражение в качестве параметра ORDER BY
не допускается использование псевдонимов AVG
не может быть вложенной в групповую функцию MAX
GROUP BY
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000$ | 0.8 | 10 | 20.05.98 |
12 | Alex | 17 | 900$ | NULL | 20 | 21.06.98 |
13 | Jack | 15 | 1500$ | 0.2 | 20 | NULL |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
NULL |
report |
0 |
report |
2 |
report |
3 |
Фраза GROUP BY
:
ORDER BY
WHERE
Worker
имеет следующую схему:
Запрос SQL имеет вид:
При попытке выполнить запрос, сервер БД генерирует ошибку. Укажите правильную причину ошибки:
AVG
используется недопустимый модификатор ALL
AVG
не существует
WHERE
WHERE
не могут использоваться групповые функции (если не принимать во внимание подзапросы)
WHERE
должна следовать после фразы GROUP_BY
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1600 | 0.8 | 10 | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 10 | 21.06.98 |
13 | Peter | 17 | 1800 | 0.6 | 20 | NULL |
14 | Abel | 17 | 1800 | 0.9 | 20 | NULL |
Запрос имеет следующий вид
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
1 |
1 |
2 |
report |
1 |
0 |
2 |
report |
NULL |
report |
1 |
1 |
1 |
1 |
Worker
имеет схему
Запрос предназначен для определения суммы премий (Salary*Commission_pct
)по отделам. Итоговый отчет должен быть отсортирован в порядке убывания премий.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
Декартово произведение:
FROM
перечисляется несколько таблиц и при этом отсутствует условие WHERE
CROSS JOIN
Worker
имеет схему:
Отношение Branch
имеет схему:
Отношение Location
имеет схему:
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке.
Укажите правильную причину возникновения ошибки:
USING
следует использовать ключевое слово ON
JOIN
SELECT
указаны без префиксов
Location_id
в отношении Branch
не является внешним ключом, ссылающимся на одноименный атрибут в отношении Location
, поэтому не может использоваться для соединения строк из указанных таблиц
Worker
имеет схему:
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar), Location_id (int)
Запрос SQL предназначен для отображения информации о сотрудниках компании. Отчет должен включать имена сотрудников и номера соответствующих им отделов. В отчет должны попасть отделы, в которых еще никто не работает, а также новые сотрудники, не распределенные по отделам.
Выберите из предложенных вариантов тот, который при подстановке вместо знаков подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.
Worker w LEFT OUTER JOIN Branch b ON w.Branch_id = Branch.Branch_id
Worker w, Branch WHERE w.Branch_id = Branch.Branch_id
Worker w JOIN Branch USING w.Branch_id = Branch.Branch_id
Worker w RIGHT OUTER JOIN Branch b ON w.Branch_id = Branch.Branch_id
Worker w FULL OUTER JOIN Branch ON w.Branch_id = Branch.Branch_id
Worker
имеет схему:
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar), Location_id (int)
Запрос SQL предназначен для отображения номеров отделов компании и числа сотрудников, работающих в каждом отделе. Если в отделе нет ни одного сотрудника, в отчете напротив номера этого отдела должно находиться значение 0.
Какие фрагменты кода следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 10 | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
Отношение Worker_grade
состоит из следующих кортежей:
Grade_id | Lowest_sal | Highest_sal |
1 | 500 | 900 |
2 | 901 | 1500 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Worker_name | Grade_id |
Tom | 1 |
Tom | 2 |
Alex | 1 |
Alex | 2 |
Worker_name | Grade_id |
Tom | 2 |
Alex | 1 |
Worker_name | Grade_id |
Alex | 1 |
Worker_name | Grade_id |
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
12 | Tom | 17 | 1000$ | 0.8 | 10 | 20.05.98 |
17 | Alex | NULL | 900$ | NULL | 20 | 21.06.98 |
16 | Sam | 17 | 1500$ | 0.2 | 20 | NULL |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name | report |
Alex | 2 |
name | report |
Alex | 0 |
name | report |
Alex | 1 |
WHERE
, если в качестве правого операнда используется подзапрос (однострочный или многострочный):
IN LIST
= NOT ALL
Worker
имеет схему:
Отношение Worker_grade
имеет схему:
Worker_grade: Grade_id (int, PK), Lowest_sal (float), Highest_sal (float)
Запрос предназначен для отображения всех сотрудников, оклад которых попадает в более низкую категорию (Grade_id)
, чем категория оклада сотрудника John:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
< ANY(SELECT Grade_id FROM Worker, Worker_grade)
WHERE Salary BETWEEN Lowest_sal AND Highest_sal AND Worker_name = ‘John’
< (SELECT Grade_id FROM Worker, Worker_grade)
WHERE Salary BETWEEN Lowest_sal AND Highest_sal AND Worker_name = ‘John’
< ALL(SELECT * FROM Worker, Worker_grade)
WHERE Salary BETWEEN Lowest_sal AND Highest_sal AND Worker_name = ‘John’
< SELECT Grade_id FROM Worker, Worker_grade
WHERE Salary BETWEEN Lowest_sal AND Highest_sal AND Worker_name = ‘John’
< “SELECT Grade_id FROM Worker, Worker_grade
WHERE Salary BETWEEN Lowest_sal AND Highest_sal AND Worker_name = ‘John’ ”
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1600 | 0.8 | 10 | 20.05.98 |
15 | Alex | NULL | 900 | NULL | 10 | 21.06.98 |
13 | Peter | 17 | 1800 | 0.6 | 20 | NULL |
17 | Abel | NULL | 1900 | 0.9 | 20 | NULL |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name1 | name2 |
Tom | Alex |
name1 | name2 |
Tom | Alex |
Peter | Abel |
name1 | name2 |
Alex | Tom |
Abel | Peter |
name1 | name2 |
Alex | Tom |
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 10 | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
Запрос SQL имеет вид:
При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
w
> ALL
может применяться только для многострочных подзапросов
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name, Position, Salary, Commission_pct, Branch_id (int, FK)
Запрос предназначен для отображения имен сотрудников, оклад которых равен среднему окладу в одном из отделов 10 или 20.
Выберите варианты кода, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
=
= IN LIST
IN
= ANY
= ALL
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name, Position, Salary, Commission_pct, Branch_id (int, FK)
Отношение Skills
имеет схему:
Отношение Worker_skill
имеет схему:
Запрос предназначен для отображения имен сотрудников, которые обладают навыком "Java programming":
При выполнении данного запроса отбирается избыточное количество строк, т.е. имена даже тех сотрудников, которые не обладают заданным навыком. Объясните причину отклонения получаемого результата от ожидаемого результата.
JOIN
, то следующий далее оператор EXISTS
игнорируется WHERE
следовало использовать оператор AND
EXISTS
пропущено условие: ws.Skill_id = Skills.Skill_id
EXISTS
в данном примере следовало использовать оператор PERSISTS
a, f1, f2
имеют тип данных INT
:Оператор EXCEPT
:
NOT EXISTS
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom_Parker | 15 | 1100 | 0.8 | 10 | 20.05.98 |
12 | Alex_Stone | 17 | 900 | 0.2 | 20 | 21.06.98 |
Отношение Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Research | 12 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Alex_Stone |
Research |
name |
Tom_Parker |
Alex_Stone |
Accounting |
Research |
name |
Tom_Parker |
Research |
Worker
имеет схему:
Manager
имеет схему:
Запрос предназначен для отображения имен сотрудников, которые не встречаются среди имен менеджеров
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
INTERSECTION
INTERSECT
EXCEPTION
EXCEPT
EXISTS
Оператор SELECT
-
DML
(язык манипулирования данными) при организации подзапросов
DСL
(язык управления данными)
Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | NULL | 12 |
Запрос SQL имеет вид:
Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса, при условии, что столбцы Branch_id
и Branch_title
обладают одинаковым типом данных – VARCHAR
.
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | NULL | 12 |
Branch_id | Branch_title | Location_id |
20 | NULL | 12 |
10 | Accounting | 11 |
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
Worker
имеет схему:
Запрос предназначен для получения отчета, который содержит информацию об имени каждого сотрудника, его премиальных (Salary*Commission_pct
) и доле премиальных в его общем доходе (оклад + премия) в процентах
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата при условии, что столбцы Salary
и Commission_pct
не могут принимать значение NULL
:
Salary*Commission_pct*100/Salary+Salary*Commission_pct
Salary*Commission_pct*100/(Salary+Salary*Commission_pct) AS commission part
bonus*100/(Salary+Salary*Commission_pct)
bonus*100/Salary+Salary*Commission_pct
Salary*Commission_pct*100/(Salary+Salary*Commission_pct)
Оператор COMMIT
BETWEEN AND
(в интервале)
LIKE
Worker
имеет схему:
Запрос, предназначенный для генерации отчета, содержащего информацию о сотрудниках, которые были приняты на работу в 1998 и 1997 гг. и имеющих общий доход (оклад + премия), не превышающий 1500, имеет вид:
При выполнении запроса сервер БД генерирует ошибку. Среди предложенных вариантов укажите правильную причину ошибки при условии, что форматом даты по умолчанию для заданных региональных настроек БД является формат: "dd.mm.yy", а столбец Hire_date
обладает типом данных timestamp
:
timestamp
не могут применяться операции сравнения: <, >= WHERE
происходит сравнение данных типа timestamp (Hire_date)
со строковыми константами, и при этом не выполняется явного преобразования типов данных, что недопустимо WHERE
пропущен левый операнд Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom_Jayson | 15 | 1100 | 0.4 | 10 | 20.05.98 |
12 | Alex_Tayler | 17 | 900 | 0.2 | 20 | 21.06.98 |
… | … | … | … | … | … | … |
Запрос предназначен для получения отчета, содержащего информацию о сотрудниках, для которых помимо имени известна и фамилия (фамилия отделяется от имени символом "_" в столбце Worker_name
).
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Worker_name LIKE ‘%!_%’ ESCAPE ‘!’
Worker_name LIKE “%!_%” ESCAPE ‘!’
Worker_name LIKE ‘%?_’ ESCAPE ‘?’
Worker_name LIKE ‘%?_%’ ESCAPE '?'
Worker_name LIKE ‘%[_]’
Worker
имеет схему:
Запрос предназначен для нахождения всех сотрудников 10 и 20 отделов с зарплатой, превышающей 1000, и сотрудников 30 отдела с зарплатой, превышающей 800.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата при условии, что столбцы Branch_id
и Salary
не могут принимать значение NULL
:
(Branch_id IN (10, 20) AND Salary >1000) AND (Branch_id = 30 AND Salary >800)
(Branch_id =10 OR Branch_id=20 AND Salary >1000) OR (Branch_id = 30 AND Salary >800)
(Branch_id IN (10, 20) AND Salary >1000) OR (Branch_id = 30 AND Salary >800)
(Branch_id =10 OR Branch_id=20) AND Salary >1000 OR Branch_id = 30 AND Salary >800
Worker
имеет схему:
Запрос предназначен для отображения имен сотрудников и их окладов (Salary)
, увеличенных на 10%, если сотрудник работает в 10 отделе и на 20% во всех остальных случаях. (Изменение окладов должно быть отражено только в отчете, но не в самой БД)
Выберите из предложенных вариантов тот, которые при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
IF (Branch_id=10) THEN Salary*1.1 ELSE Salary*1.2 AS new Salary
IF (Branch_id=10) THEN Salary*1.1 ELSE Salary*1.2 END AS new Salary
SUBSTRING
EXTRACT
NULLIF
TRIM
DELBL
ALTER TABLE
COMMIT
SET
UPDATE
UPGRADE
Worker
имеет схему:
При выполнении следующего запроса сервер БД генерирует ошибку.
Укажите причину ошибки.
FROM
SET
Manager_id
не может принимать значение NULL
IS
следует использовать знак "=" Worker
имеет схему:
Требуется увеличить на 500 зарплату и назначить менеджером сотрудника с номером 13 для работающих в отделе 10. Выберите варианты запроса, решающего данную задачу.
CREATE TABLE
ON DELETE CASCADE
ON INSERT CASCADE
ON DELETE SET NULL
DATE
FLOAT
INTEGER
TIME
TIMESTAMP
Групповые функции:
SELECT
WHERE
(если не идет речь о подзапросе)
NULL
, если в качестве аргумента встречается неопределенное значение
ORDER BY
Worker
имеет схему:
Запрос предназначен для получения максимального дохода (оклад + премия) среди всех сотрудников. Премия рассчитывается как произведение значений в столбцах Salary
и Commission_pct
.
Выберите из предложенных вариантов те, которые обеспечивают получение требуемого результата.
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000$ | 0.8 | 10 | 20.05.98 |
12 | Alex | 17 | 900$ | NULL | 20 | 21.06.98 |
13 | Jack | 15 | 1500$ | 0.4 | 20 | NULL |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
0.6 |
report |
0.4 |
report |
NULL |
report |
0 |
WHERE AVG (column_name) > 10
Worker
имеет схему:
Запрос предназначен для получения общего дохода (Salary + Salary*Commission_pct
) сотрудников по отделам 10 и 20 (Branch_id
). Расчет должен учитывать всех сотрудников указанных отделов.:
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата, при условии, что столбцы Salary
и Commission_pct
имеют тип данных float
.
Worker
имеет схему:
Запрос имеет следующий вид:
При попытке выполнить запрос сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки.
SELECT
присутствует выражение, которого нет во фразе GROUP BY
SELECT
следует добавить столбец Position
GROUP BY
следует использовать ключевое слово GROUP
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom_Jayson | 15 | 500 | 0.4 | 10 | 20.05.98 |
12 | Alex_Tayler | 17 | 1100 | NULL | 20 | 21.06.98 |
13 | Alex_Garnet | 17 | 1100 | NULL | 10 | 21.06.98 |
Запрос имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
report |
800 |
report |
900 |
report |
1100 |
Worker
имеет схему:
Отношение Branch
имеет схему:
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке.
Укажите правильную причину возникновения ошибки:
SELECT
должен предшествовать префикс, включающий название таблицы JOIN
в сочетании с оператором ON
JOIN
в сочетании с оператором USING
SELECT
названию столбца Branch_id
должен предшествовать префикс, указывающий на конкретное отношение, поскольку столбец с названием Branch_id
присутствует в обеих таблицах, по которым образуется соединение
Worker
имеет схему:
Отношение Branch
имеет схему:
Запрос SQL предназначен для отображения информации об отделах компании. Отчет должен включать номера отделов и имена сотрудников, работающих в этих отделах, в отчете также должны быть представлены отделы, к которым еще не приписаны никакие сотрудники (новые отделы).
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
Branch, Worker WHERE Worker.Branch_id = Branch.Branch_id
Branch b LEFT OUTER JOIN Worker w ON w.Branch_id = b.Branch_id
Branch b, Worker w WHERE Worker.Branch_id = Branch.Branch_id
Branch b LEFT OUTER JOIN Worker w WHERE Worker.Branch_id = b.Branch_id
Branch b JOIN Worker w USING w.Branch_id = b.Branch_id
Worker
имеет схему:
Отношение Skills
имеет схему:
Отношение Worker_skill имеет схему:
Запрос SQL предназначен для отображения имен сотрудников и наименований соответствующих им навыков, в итоговый отчет должны попасть только те сотрудники, одним из навыков которых является "management
".
SELECT w.Worker_name, sk.Skill_title
FROM Worker w JOIN Worker_skill
____w.Worker_id = Worker_skill.Worker_id
JOIN Skills sk
____ sk.Skill_id = Worker_skill.Skill_id
____ sk.Skill_title = ‘management’
Какие ключевые слова следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 17 | 1000 | 0.5 | NULL | 20.05.98 |
12 | Alex | 17 | 900 | NULL | 20 | 21.06.98 |
Отношение Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Research | 12 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Worker_name | Branch_id |
Tom | NULL |
Alex | 20 |
NULL | 10 |
Worker_name | Branch_id |
Alex | 20 |
NULL | 10 |
Worker_name | Branch_id |
Alex | 20 |
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 500 | 0.4 | 10 | 20.05.98 |
12 | Alex | 15 | 1200 | NULL | 20 | 21.06.98 |
15 | James | 17 | 1100 | NULL | 20 | 21.06.98 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Alex |
name |
Tom |
Alex |
name |
Alex |
James |
SELECT
не могут присутствовать подзапросы
ORDER BY
HAVING
GROUP BY
FROM
Worker
имеет схему:
Запрос предназначен для отображения имен сотрудников, которые имеют оклад (Salary)
, равный минимальному окладу среди всех сотрудников компании:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.
<= ALL(SELECT Salary FROM Worker)
= MIN (Salary)
= SELECT MIN(Salary) FROM Worker
= (SELECT MIN(Salary) FROM Worker)
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 500 | 0.4 | 10 | 20.05.98 |
12 | Alex | 15 | 1200 | 0 | 20 | 21.06.98 |
15 | James | 17 | 1100 | 0 | 20 | 21.06.98 |
Запрос SQL имеет следующий вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
Worker_name |
Tom |
Worker_name |
Tom |
James |
Worker_name |
Tom |
Alex |
James |
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 500 | 0.4 | 10 | 20.05.98 |
12 | Alex | 15 | 1200 | NULL | 20 | 21.06.98 |
15 | James | 17 | 1100 | NULL | 20 | 21.06.98 |
Запрос SQL имеет вид:
При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
SELECT
и WHERE
должен предшествовать префикс "w"
Worker
имеет схему:
Запрос предназначен для отображения имен сотрудников, премия которых (Salary*Commission_pct
) превышает премию хотя бы одного сотрудника, работающего в отделе 10.
Укажите операторы сравнения, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
> ANY
>
> IN
> IN LIST
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 500 | 0.4 | 10 | 20.05.98 |
12 | Alex | 15 | 1200 | NULL | 20 | 21.06.98 |
15 | James | 17 | 1100 | NULL | 20 | 21.06.98 |
Отношение Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Research | 12 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Tom |
name |
Tom |
Alex |
James |
name |
Alex |
James |
а
в обеих таблицах совпадает.)Оператор INTERSECTION
:
Worker
состоит из следующих кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Robert | 17 | 1000 | 0.5 | 10 | 20.05.98 |
12 | Alexis | 17 | 900 | NULL | 20 | 21.06.98 |
Отношение Worker1
состоит из следующих кортежей:
12 | Alexis | 17 | 1200 | NULL | 20 | 29.06.98 |
Запрос SQL имеет вид:
Выберите среди предложенных вариантов верный вариант итогового отчета:
name |
Robert |
Alexis |
name |
Alexis |
Alexis |
name |
Alexis |
Worker
имеет схему:
Manager
имеет схему:
Запрос предназначен для отображения имен менеджеров, которые встречаются среди имен сотрудников
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
INTERSECTION
INTERSECT
EXCEPTION
EXCEPT
WHERE EXISTS