SQL - ответы на тесты Интуит
Все ответы: Проверка знаний синтаксиса и семантики основных конструкций операторов групп: DML (data manipulation language), DDL (data definition language) и DCL (data control language). Проверка знаний синтаксиса и семантики операторов работы с различными объектами БД. Проверка знаний синтаксиса и семантики операторов управления транзакциями. Проверка знаний различных режимов изоляции транзакций.
GET
OPEN
READ
SELECT
VIEW
SELECT
посредством
HAVING
ORDER
WHERE
FROM
SELECT
SELECT
с помощью
FROM
JOIN ... USING
NATURAL JOIN
UNION
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос SQL предназначен для получения имен студентов, имеющих средний балл по математике (Math_scope)
от 3 до 4 включительно, и имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают выполнение задания.
Math_scope <= 4.0 AND Math_scope >>= 3.0
Math_scope >= 3.0 OR Math_scope <= 4.0
Math_scope BETWEEN 3.0 AND 4.0
Math_scope BETWEEN 3.0 AND 4.1
Math_scope IN (3.0, 4.0)
SELECT
может следовать
ALL
LIMIT
(Math_scope)
. Если у нескольких студентов балл по математике одинаков, то имена таких студентов (Student_name)
должны идти в алфавитном порядке.
Выберите варианты сортировки, соответствующие заданию.
ORDER BY Math_scope, Student_name ASC
ORDER BY Math_scope DESC, Student_name
ORDER BY Math_scope DESC, Student_name ASC
ORDER BY Student_name Math_scope DESC
ORDER BY Student_name ASC, Math_scope DESC
GROUP BY
COUNT
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Требуется получить количество всех студентов
Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.
SELECT COUNT(*) FROM Students
SELECT COUNT(DISTINCT Student_name) FROM Students
SELECT COUNT(Student_id) FROM Students
SELECT COUNT(Student_name) FROM Students
SELECT DISTINCT COUNT(Student_name) FROM Students
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Требуется получить количество студентов, являющихся старостами. (Head_stud_id
- идентификатор студента-старосты)
Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Требуется получить имена студентов, имеющих самую высокую оценку по математике.
Выберите варианты условия (вместо знака подчеркивания), соответствующие заданию.
Math_scope > MAX(Math_scope)
Math_scope >= ALL (SELECT Math_scope FROM Students)
Math_scope > ANY (SELECT Math_scope FROM Students)
Math_scope >= (SELECT MAX(Math_scope) FROM Students)
Math_scope >= (SELECT Math_scope FROM Students)
Если отношение t1
содержит k1
кортежей, а отношение t2
содержит k2
кортежей, то результат выполнения запроса
будет содержать
k1*k2
кортежей k1+k2
кортежей max(k1, k2)
кортежей min(k1, k2)
кортежей CROSS JOIN
FULL JOIN
LEFT JOIN
NATURAL JOIN
перечисление таблиц через запятую во фразе FROM
CROSS OUTER JOIN
FULL OUTER JOIN
JOIN ... USING
LEFT OUTER JOIN
FROM
JOIN
реализует реляционную операцию
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Требуется получить имена студентов, обучающихся в 10-й и 20-й группах.
Выберите варианты запросов, соответствующие заданию.
TINYINT
REAL
FLOAT
LONG
TIMESTAMP
Оператор INSERT
:
DDL
VALUES
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)
Запрос SQL предназначен для вставки в таблицу Groups
новой строки и имеет вид:
Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции при условии, что учебной группы с номером 12 ранее не существовало:
Group_id | Group_grade | Specialty_id | Head_stud_id |
12 | 0 | 0 | 15 |
Group_id | Group_grade | Specialty_id | Head_stud_id |
12 | NULL | NULL | 15 |
Group_id | Group_grade | Specialty_id | Head_stud_id |
12 | 0 | NULL | 15 |
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)
Запрос SQL предназначен для вставки в таблицу Groups
новой строки и имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата при условии, что учебной группы с номером 12 ранее не существовало
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
и состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Scott | 15 | 5.0 | 4.3 | 10 |
10 | Tom | NULL | 4.0 | 5.0 | NULL |
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
INSERT
не хватает ключевого слова TABLE
, которое должно следовать за ключевым словом INTO
VALUES
является лишним VALUES
определены значения не для всех столбцов таблицы Students
"Martin"
должна быть заключена в апострофы INTO
следовало использовать слово IN
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Students1
имеет схему:
Students1: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос SQL предназначен для копирования информации о студентах учебной группы №20 из таблицы Students
в таблицу Students1
:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20
VALUES (SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20)
SELECT * FROM Students WHERE Group_id=20
AS SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20
(SELECT Student_id, Student_name, Math_scope FROM Students WHERE Group_id=20)
Фраза SET
:
UPDATE
UPDATE
WHERE
в запросе UPDATE
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для снижения на 10% успеваемости по математике (Math_scope)
и ин. языку (Lang_scope)
среди студентов учебной группы №20.
Среди приведенных ниже кодов укажите вариант, которым можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.
Math_scope*0.9 AND Lang_scope*0.9
Math_scope = Math_scope*0.9 AND Lang_scope = Lang_scope*0.9
Math_scope = Math_scope*0.9, Lang_scope = Lang_scope*0.9
Math_scope, Lang_scope = (Math_scope*0.9, Lang_scope*0.9)
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос предназначен для перевода группы № 10 на третий курс (Grade_level=3)
и назначения группе № 20 нового старосты (Head_stud_id)
– студента с номером 15.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Students
состоит из кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 10.0 | 10 |
11 | Tom | 15 | 3.9 | 8.0 | 20 |
Groups
состоит из кортежей:
Group_id | Group_grade | Head_stud_id | Specialty_id |
10 | 5 | 15 | 123 |
20 | 3 | NULL | 11 |
Запрос SQL имеет вид:
Среди предложенных вариантов выберите, каким, в итоге, останется отношение Students
.
Students
останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 10.0 | 10 |
11 | Tom | 15 | 3.9 | 9.9 | 20 |
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 10.0 | 10 |
11 | Tom | 15 | 3.9 | 9.0 | 20 |
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 9.9 | 10 |
11 | Tom | 15 | 3.9 | 9.9 | 20 |
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для удаления записей о студентах учебной группы №20.
Какие ключевые слова следует вставить вместо знаков подчеркивания для получения корректного запроса, решающего поставленную задачу?
Math_scope
типа float
в новой таблице Student1
. Столбец не должен принимать значение NULL
, и его значением по умолчанию должно быть значение 3.5.
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
FLOAT DEFAULT Math_scope = 3.5 NOT NULL
FLOAT IS NOT NULL DEFAULT (3.5)
FLOAT, NOT NULL, DEFAULT 3.5
NOT NULL FLOAT DEFAULT VALUE = 3.5
FLOAT NOT NULL DEFAULT 3.5
Salary
типа int
в новой таблице Worker1
. Столбец не должен принимать значение NULL
, и его значением по умолчанию должно быть значение 800.
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
INT NOT NULL DEFAULT 800
INT NOT NULL WITH DEFAULT 800
INT IS NOT NULL WHEN DEFAULT 800
INT DEFAULT VALUE = 800 NOT NULL
INT, NOT NULL, DEFAULT 800
Ограничение FOREIGN KEY
:
UNIQUE
ON DELETE
ON UPDATE
UNIQUE
PRIMARY KEY
FOREIGN KEY
NOT NULL
CHECK
Groups
использовалась следующая команда:
Отношение Groups
состоит из кортежей:
Group_id | Group_grade | Head_stud_id | Specialty_id |
15 | 3 | 15 | 10 |
Отношение Specialties
состоит из следующих кортежей:
Specialty_id | Specialty_title | Specialty_rating |
10 | Account | 9.8 |
20 | Sales | 6.2 |
Запрос SQL имеет вид:
DELETE FROM Specialties WHERE Specialty_id=10
Укажите, каким в результате выполнения данного запроса окажется отношение Groups
:
Groups
останется без изменений
Groups
окажется пустым
Group_id | Group_grade | Head_stud_id | Specialty_id |
15 | 3 | 15 | NULL |
Group_id | Group_grade | Head_stud_id | Specialty_id |
15 | 3 | 15 | 20 |
Students
, связанной с таблицей Groups
ограничением ссылочной целостности по столбцам Students.Group_id
, Groups.Group_id
, гарантирующим, что при удалении записи о некоторой группе, записи о студентах, принадлежащих этой группе, автоматически будут переназначаться группе с номером 20.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
REFERENCES Groups (Group_id) ON DELETE SET DEFAULT 20
REFERENCES Groups (Group_id) ON DELETE SET DEFAULT DEFAULT 20
REFERENCES ON Groups ON DELETE SET DEFAULT DEFAULT = 20
Students
использовалась следующая команда:
Отношение Students
состоит из кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | 10 |
Отношение Groups
состоит из кортежей
Group_id | Group_grade | Head_stud_id | Specialty_id |
10 | 3 | 15 | 123 |
Запрос SQL имеет вид:
DELETE FROM Groups WHERE Group_id=10
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
Group_id
таблицы Students
не было задано значение по умолчанию
DELETE
Branch_id
таблицы Students
не задана секция ON DELETE
, поэтому удаление любых записей таблицы Branch
невозможно
Оператор ALTER TABLE
может использоваться для:
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Для создания представления используется запрос:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:
SELECT Student_id, Student_name, Group_id FROM Students
SELECT * FROM Students
Student_id Id, Student_name Name_of_Student, Group_id Group FROM Students
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Для создания представления использовалась команда:
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
view1
INTO
не хватает слова VIEW
VALUES
является лишним
Students
зарегистрированному пользователю базы данных User1
:
GRANT ________________User1
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение операции:
PERMISSION SELECT Students TO
SELECT ON Students FOR
SELECT ON Students TO
SELECTION ON Students FOR
SELECTION ON Students TO
Students
у пользователя User1
.
REVOKE FROM User1 INSERT ON Students
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
REVOKE
следовало использовать ключевое слово DENY
ON
является лишним FROM
следовало использовать слово TO
INSERT
должна идти сразу после слова REVOKE
(ISOLATION LEVEL)
READ COMMITTED
READ UNCOMMITTED
REPEATABLE WRITE
SERIAL
SEVERE
DISTINCT
во фразе SELECT
может следовать
ALL
MIN
SELECT
с помощью
FROM
GROUP
INNER JOIN
INTERSECT
UNION
SELECT
BETWEEN d1 AND d2
d2
не может быть равен или меньше, чем d1
d1
должно быть не больше d2
d1
может быть больше d2
d1
и d2
могут быть типа DATE
WHERE Student_name = 'B%'
WHERE Student_name >= 'B' AND Student_name < 'C'
WHERE Student_name LIKE '%B%'
WHERE Student_name LIKE 'B_'
WHERE Student_name LIKE 'B%'
(Math_scope)
. Если несколько студентов имеют одинаковый балл по математике, то среди них первыми должны располагаться студенты с наибольшим баллом по иностранному языку (Lang_scope)
.
Выберите варианты сортировки, соответствующие заданию.
ORDER BY Lang_scope, Math_scope
ORDER BY Lang_scope, Math_scope DESC
ORDER BY Lang_scope DESC, Math_scope DESC
ORDER BY Math_scope, Lang_scope
ORDER BY Math_scope, Lang_scope DESC
ORDER BY Math_scope DESC, Lang_scope DESC
GROUP
HAVING
ORDER
SELECT
WHERE
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Требуется получить количество студентов, аттестованных (имеющих некоторую оценку) по иностранному языку
Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.
SELECT
SELECT
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)
Требуется получить список групп, в которых все студенты имеют балл по математике выше 4.5.
Выберите варианты запросов, соответствующие заданию.
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)
В каких запросах во фразе FROM
необходимо использовать таблицу Students
более одного раза?
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)
Требуется получить имена студентов и номера специальностей, по которым они учатся.
Выберите фрагменты запроса (вместо знака подчеркивания), соответствующие заданию.
Students INNER JOIN Groups
Students INNER JOIN Groups ON Group_id
Students INNER JOIN Groups ON Students.Group_id = Groups.Group_id
Students JOIN Groups USING (Group_id)
Students NATURAL JOIN Groups ON Students.Group_id = Groups.Group_id
Students OUTER JOIN Groups ON Students.Group_id = Groups.Group_id
t1
, содержащей 4 строки, в столбце f
содержатся значения 1, 2, 2, 3. В таблице t2
, содержащей 5 строк, в столбце f
содержатся значения 2, 2, 3, 3, 4.
Сколько строк данных будет получено в результате выполнения запроса
необходимо:
ALL
в Запрос1
ALL
в Запрос2
ALL
и в Запрос1
и в Запрос2
ALL
после слова UNION
INTERSECT
реализует реляционную операцию
SMALLINT
BIT
NUMERIC
DECIMAL
TIMESTAMP
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Students1
является пустым и имеет схему:
Students1: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
INTO
следовало использовать словосочетание INTO TABLE
SELECT
вместо символа "*" следовало использовать перечисление всех столбцов таблицы Students
AS
является лишним
ORDER BY
недопустима в подзапросе, использующемся для вставки строк
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос SQL предназначен для вставки в таблицу Students
новой строки и имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают безошибочное выполнение запроса
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос SQL предназначен для вставки в таблицу Groups
новой строки и имеет вид:
Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции при условии, что учебной группы с номером 10 ранее не существовало:
Group_id | Group_grade | Specialty_id | Head_stud_id |
10 | 0 | NULL | 15 |
Group_id | Group_grade | Specialty_id | Head_stud_id |
10 | 0 | 0 | 15 |
Group_id | Group_grade | Specialty_id | Head_stud_id |
10 | NULL | NULL | 15 |
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
и состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Scott | 15 | 5.0 | 4.9 | 10 |
10 | Tom | NULL | 4.0 | 4.1 | NULL |
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит устранить ошибку:
VALUES
в тип float
с помощью функции cast
INTO
словосочетанием INTO TABLE
INSERT
названия столбцов Math_scope
и Student_name
‘Tom’
использовать строковое значение ‘1.2’
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Отношение Groups1
имеет схему:
Groups1: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос SQL предназначен для копирования информации обо всех учебных группах второго курса (Grade_level=2)
из таблицы Groups
в таблицу Groups1
:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
SELECT Group_id, Grade_level, Specialty_id FROM Groups WHERE Grade_level=2
VALUES (Group_id, Grade_level, Specialty_id FROM Groups WHERE Grade_level=2)
SELECT * FROM Groups WHERE Grade_level=2
UPDATE
:
LIMIT
TABLE
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для внесения изменений в записи о студентах учебной группы №20. Для указанных записей номер группы должен быть изменен на 30, а значение в поле Head_stud_id
стать равным 15.
Среди приведенных ниже кодов укажите вариант, которым можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.
COLUMN Head_stud_id = 15, Group_id =30
SET Head_stud_id = 15, SET Group_id =30
SET Head_stud_id = 15 AND Group_id =30
SET Head_stud_id = 15, Group_id =30
SET COLUMNS Head_stud_id = 15, Group_id =30
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для увеличения оценки по математике (Math_scope)
студентам группы №20 на 10% и студентам группы №30 на 20%.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Students
состоит из кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 4.4 | 10 |
11 | Tom | 15 | 3.9 | 3.1 | 20 |
Отношение Groups
состоит из кортежей:
Group_id | Group_grade | Head_stud_id | Rating |
10 | 5 | 15 | low |
20 | 3 | NULL | high |
Запрос SQL имеет вид:
Среди предложенных вариантов выберите, каким, в итоге, останется отношение Groups
.
Groups
останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет
Group_id | Group_grade | Head_stud_id | Rating |
10 | 5 | 15 | High |
20 | 3 | NULL | high |
Group_id | Group_grade | Head_stud_id | Rating |
10 | 5 | 15 | Low |
20 | 3 | NULL | High |
Group_id | Group_grade | Head_stud_id | Rating |
10 | 5 | 15 | HIGH |
20 | 3 | NULL | high |
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для удаления записей о студентах учебной группы №20, с баллом по математике (Math_scope)
, меньшим 3.5.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Ключевое слово CONSTRAINT
в предложении CREATE TABLE
:
DEFAULT
При выполнении запроса сервер БД генерирует ошибку. Выберите действие, выполнение которого позволит устранить ошибку:
nom
, являющийся ключевым словом NOT NULL
в определении столбца name
CREATE TABLE
в скобки AS
Ограничение CHECK
:
CHECK (значение1, значение2, ...)
CHECK
UNIQUE
NOT NULL
PRIMARY KEY
FOREIGN KEY
Students
использовалась следующая команда:
Отношение Students
состоит из кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | 10 |
Отношение Groups
состоит из кортежей
Group_id | Group_grade | Head_stud_id | Specialty_id |
10 | 3 | 15 | 123 |
Запрос SQL имеет вид:
UPDATE Groups SET Group_id=40 WHERE Group_id=10
Укажите, каким в результате выполнения данного запроса окажется отношение Students
:
Students
останется без изменений
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | NULL |
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | 40 |
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | 20 |
Students
, для которой установлено ограничение, гарантирующее, что столбец Student_id
будет принимать только уникальные значения, отличные от NULL
.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
UNIQUE, NOT NULL
NOT NULL, UNIQUE (Student_id)
UNIQUE NOT NULL
UNIQUE, CONSTRAINT pk_st NOT NULL (Student_id)
NOT NULL, UNIQUE
Students
использовалась следующая команда:
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину ошибки:
CHECK
может определяться только на уровне отдельного столбца, но не всей таблицы
CHECK
не могут использоваться подзапросы
PRIMARY KEY
не задано имя ограничения
PRIMARY KEY
может определяться только на уровне целой таблицы, но не отдельного столбца
Фраза ALTER COLUMN
в предложении ALTER TABLE
может использоваться для:
DEFAULT
DEFAULT
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Для создания представления, в которое должны попасть только имена студентов второго курса, используется запрос:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Для создания представления использовалась команда:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
WITH CHECK OPTION
отсутствует логическое условие
WITH CHECK OPTION
пропущено название создаваемого ограничения
CREATE VIEW
не совпадает с числом столбцов, возвращаемых подзапросом
AS
является лишним
Lang_scope
таблицы Students
у зарегистрированного пользователя базы данных User1
.
REVOKE________________User1
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение операции:
UPDATE COLUMN Lang_scope IN Students FROM
UPDATE (Lang_scope) ON Students FROM
PRIVILEGE UPDATE ON Students (Lang_scope) TO
PERMISSION UPDATE ON Lang_scope (Students) FOR
UPDATE ON Lang_scope (Students) FROM
Students
зарегистрированному в базе данных пользователю User1
.
GRANT INSERTION ON Students TO User1
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
ON
следовало использовать ключевое слово IN
после слова INSERTION
TO
пропущено ключевое слово USER
INSERTION
следовало использовать слово INSERT
(ISOLATION LEVEL)
REPEATABLE READ
READ COMMITTED
READ UNCOMMITTED
SERIALIZABLE
FROM
следующим образом:
таблица1 таблица2
таблица1 AND таблица2
таблица1 CROSS JOIN таблица2
таблица1 INNER JOIN таблица2
таблица1 OUTER JOIN таблица2
SELECT
с помощью
SELECT
SELECT ... WHERE ... IN (SELECT ...)
SELECT ... WHERE ... NOT IN (SELECT ...)
EXCEPT
INTERSECT
t
состоит из столбцов f1
и f2
.
Запрос SELECT f1, f2 FROM t
эквивалентен запросу
SELECT * FROM t
SELECT *, f1, f2 FROM t
SELECT ALL f1, f2 FROM t
SELECT ALL FROM t
SELECT DISTINCT * FROM t
WHERE f NOT IN (d1, d2)
эквивалентно условию
f <> d1 OR f <> d2
f <> d1 AND f <> d2
f BETWEEN d1 AND d2
NOT (f = d1 AND f = d2)
NOT (f = d1 OR f = d2)
(Math_scope)
.
Выберите условие, соответствующее заданию.
WHERE EMPTY(Math_scope)
WHERE Math_scope = 0
WHERE Math_scope = NONE
WHERE Math_scope = NULL
WHERE Math_scope IS NULL
(Point)
, которая может принимать значения 2, 3, 4, 5, получить соответственно 'неудовлетворительно', 'удовлетворительно', 'хорошо', 'отлично'.
Выберите фрагменты, соответствующие заданию.
WHERE
выполняется перед группировкой WHERE
может содержать итоговые функции HAVING
выполняется после группировки HAVING
не может содержать итоговые функции HAVING
задает условие отбора группы строк, полученной в результате группирования COUNT
может быть
DISTINCT
ALL
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос SQL имеет вид:
Данный запрос выводит
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Требуется получить имена студентов с оценкой по математике выше средней.
Выберите варианты условия (вместо знака подчеркивания), соответствующие заданию.
Math_scope > ANY (SELECT AVG(Math_scope) FROM Students)
Math_scope > AVG(Math_scope)
Math_scope > AVG(Math_scope) FROM Students
Math_scope > SELECT AVG(Math_scope) FROM Students
Math_scope > (SELECT AVG(Math_scope) FROM Students)
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char, NOT NULL), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Требуется получить список студентов, для которых старостой (Head_stud_id
- номер студента-старосты) является студент группы 12.
Выберите варианты запросов, соответствующие заданию.
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int), Head_stud_id (int)
Отношение Specialties
имеет схему:
Specialties: Specialty_id (int, PK), Specialty_title, Specialty_rating
Требуется получить номер группы и название специальности этой группы.
Выберите варианты фрагмента запроса (вместо знака подчеркивания), соответствующие заданию.
SELECT Group_id, Specialty_title FROM ________________________Specialties CROSS JOIN Groups
Specialties NATURAL JOIN Groups
Specialties JOIN Groups USING (Specialty_id)
Specialties INNER JOIN Groups ON Specialties.Specialty_id = Groups.Specialty_id
Specialties LEFT OUTER JOIN Groups ON Specialties.Specialty_id = Groups.Specialty_id
Specialties, Groups
t1
со схемой t1: (f1 (varchar), f2 (integer))
и таблица t2
с такой же схемой.
Требуется соединить таблицы t1
и t2
по столбцу f2
.
Выберите фрагменты, соответствующие заданию.
t1 INNER JOIN t2 ON f2
t1 INNER JOIN t2 ON t1.f2 = t2.f2
t1 JOIN t2 USING (f2)
t1 JOIN t2 USING t1.f2 = t2.f2
t1 NATURAL JOIN t2 ON f2
t1 NATURAL JOIN t2 USING (f2)
f
в таблице t1
и столбец f
в таблице t2
имеют тип данных INTEGER
.
ON f
ON f > 4 WHERE t1.f = t2.f
ON t1.f < t2.f
ON t1.f = t2.f
ON t1.f = t2.f AND f > 4
WHERE t1.f = t2.f AND f > 4
t1
имеет столбцы f1 (varchar)
и f2 (integer)
.
Запрос SQL имеет следующий вид:
t2
имеет схему:
t2: f1 (varchar)
t2: f2 (integer)
t2: f1 (varchar), f2 (integer)
t2: f1 (char), f2 (integer)
t2: s1 (varchar), s2 (integer)
t2: f1 (varchar), f2 (integer), f3 (date)
EXCEPT
реализует реляционную операцию
VARCHAR2
REAL
CHAR
VARCHAR
STRING
Непосредственно после ключевого слова INSERT
может следовать:
SELECT
INTO TABLE
INTO
IN
VALUES
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Отношение Groups1
является пустым и имеет схему:
Groups1: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос SQL имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит устранить ошибку:
SELECT
значение 12 на значение Head_stud_id
SELECT
TABLE
во фразе INSERT
AS
перед подзапросом
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос SQL предназначен для вставки в таблицу Groups
новой строки и имеет вид:
Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции при условии, что учебной группы с номером 10 ранее не существовало:
Group_id | Group_grade | Specialty_id | Head_stud_id |
10 | NULL | NULL | 55.4 |
Group_id | Group_grade | Specialty_id | Head_stud_id |
10 | NULL | NULL | 56 |
Group_id | Group_grade | Specialty_id | Head_stud_id |
10 | NULL | NULL | 55 |
Group_id | Group_grade | Specialty_id | Head_stud_id |
10 | NULL | NULL | NULL |
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
и состоит из следующих кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
11 | Scott | 15 | 5.0 | 4.3 | 10 |
10 | Tom | NULL | 4.0 | 5.0 | NULL |
Запрос SQL имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение запроса
4.5-0.6,
3.3
NULL,
DEFAULT,
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Отношение Groups1
является пустым и имеет схему:
Groups1: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос SQL имеет вид:
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
ORDER BY
недопустимо в подзапросе, использующемся в операторе INSERT
SELECT
подзапроса не является корректным
названием столбца
SELECT
подзапроса не может быть преобразована в значение типа int
UPDATE
:
DDL
SET
DCL
WHERE
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Запрос предназначен для снижения баллов на 20% по математике (Math_scope)
и ин. языку (Lang_scope)
среди студентов учебной группы №10.
Какие ключевые слова следует вставить вмеcто знаков подчеркивания для получения корректного запроса, решающего поставленную задачу.
Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос предназначен для изменения специальности группы № 10 на специальность с идентификатором Specialty_id = 12
и назначения группе № 30 нового старосты Head_stud_id
– студента с номером 17.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Students
состоит из кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 10.0 | 10 |
11 | Tom | 15 | 3.9 | 8.0 | 20 |
Отношение Students1
состоит из кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
13 | Alexis | 12 | 4.6 | 12.0 | 10 |
15 | Li | 15 | 4.9 | 6.0 | 20 |
Запрос SQL имеет вид:
Среди предложенных вариантов выберите, каким, в итоге, останется отношение Students
.
Students
останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 13.2 | 10 |
11 | Tom | 15 | 3.9 | 8.0 | 20 |
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 11.0 | 10 |
11 | Tom | 15 | 3.9 | 8.0 | 20 |
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 4.2 | 11.0 | 10 |
11 | Tom | 15 | 3.9 | 8.0 | 20 |
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Отношение Groups
имеет схему:
Groups: Group_id (int PK), Grade_level (int), Specialty_id (int FK), Head_stud_id (int)
Запрос предназначен для удаления записей о студентах пятого курса (Grade_level)
.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Оператор CREATE TABLE
:
DML (язык манипулирования данными)
DDL (язык определения данных)
ORDER BY
TEMPORARY
CREATE TABLE
:
Book_id FLOAT IS NOT NULL
Book_id FLOAT DIFFERENT
Book_id FLOAT PRIMARY KEY
Book_id FLOAT UNIQUE
Ограничение PRIMARY KEY
:
NOT NULL
UNIQUE
NOT NULL
CHECK
UNIQUE
PRIMARY KEY
FOREIGN KEY
Students
использовалась следующая команда:
Отношение Students
состоит из кортежей:
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | 10 |
Отношение Groups
состоит из кортежей
Group_id | Group_grade | Head_stud_id | Specialty_id |
10 | 3 | 15 | 123 |
Запрос SQL имеет вид:
DELETE FROM Groups WHERE Group_id=10
Укажите, каким в результате выполнения данного запроса окажется отношение Students
:
Students
останется без изменений
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | NULL |
Student_id | Student_name | Head_stud_id | Math_scope | Lang_scope | Group_id |
12 | Alex | 28 | 3.5 | 10.0 | 20 |
Students
окажется пустым
Students
с ограничением целостности, гарантирующим, что сумма в столбцах Math_scope
и Lang_scope
не будет меньше 4.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
CHECK (Math_scope + Lang_scope >= 4)
, CHECK (Math_scope + Lang_scope >= 4)
, CONSTRAINT chek_total_bal CHECK (Math_scope + Lang_scope >= 4)
, CHECK Math_scope + Lang_scope >= 4
, CONSTRAINT CHECK (Math_scope + Lang_scope >= 4)
Students
использовалась следующая команда:
Отношение Groups
состоит из кортежей
Group_id | Group_grade | Head_stud_id | Specialty_id |
10 | 3 | 15 | 123 |
Запрос SQL имеет вид:
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину ошибки, при условии, что студента с номером 14 ранее не существовало:
VALUES
недопустимо использование ключевого слова DEFAULT
, так как для поля Student_name
не задано значение по умолчанию
'2.98'
в значение типа FLOAT
VALUES
в данном случае является недопустимым
INTO TABLE
Оператор DROP
во фразе ALTER TABLE
может использоваться для:
Student_grade
имеет схему:
Student_grade: Grade_id (int PK), Lowest_total_scope (float), Highest_total_scope (float)
Отношение Students
имеет схему:
Students: Student_id (int, PK), Student_name (varchar (30)), Head_stud_id (int), Math_scope (float, NOT NULL), Lang_scope (float, NOT NULL), Group_id (int, FK)
Для создания представления, в которое должны попасть только имена студентов с рейтингом (Grade_id
), равным 1, используется запрос:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:
AS
BASING ON
AS SUBQUERY
WITH CHECK OPTION
Students
имеет схему:
Students: Student_id (int, PK), Student_name (char), Head_stud_id (int), Math_scope (float), Lang_scope (float), Group_id (int)
Для создания индекса столбца Student_name
используется запрос:
CREATE ______________
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение запроса и получение требуемого результата:
INDEX FOR Students (Student_name)
INDEX index1 ON Students (Student_name)
INDEX ON Students.Student_name
INDEXES index1 FOR Students (Student_name)
GRANT
для предоставления возможности пользователям, которым назначаются некоторые привилегии, передавать эти привилегии другим пользователям:
WITH ADMIN OPTION
WITH GRANT OPTION
CAN GRANT
CAN REGRANT PERMISSIONS
Students
зарегистрированному в базе данных пользователю User1
.
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
ON
следовало использовать предлог IN
после слова INSERT
INSERT
следовало использовать слово INSERTION
WITH ADMIN OPTION
является недопустимой TO
следовало использовать предлог FOR
(ISOLATION LEVEL)
, который позволяет осуществлять чтение строк, измененных незафиксированными транзакциями.
REPEATABLE READ
READ COMMITTED
READ UNCOMMITTED
SERIALIZABLE
FROM
JOIN
ORDER
SELECT
WHERE
SELECT
реализует реляционную операцию
FROM
SELECT
SELECT
CROSS JOIN
JOIN ... USING
WHERE
команды SELECT
реализует реляционную операцию
LIKE
используются символы-маски
SELECT
.
GROUP BY
SELECT
SELECT
одновременно с фразами HAVING
и WHERE
WHERE
ORDER BY
AVG
COUNT
NUM
QTY
SUM
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить номера отделов (Branch_id)
, в которых нет зарплаты менее 1000.
Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить наименьшую из средних зарплат по отделам. Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))
Требуется получить список отделов, в которых нет сотрудника с именем Alex. Выберите варианты запросов, соответствующие заданию.
FROM t1, t2
FROM t1 INNER JOIN t2
FROM t1 CROSS JOIN t2
FROM t1 FULL OUTER JOIN t2
CROSS JOIN
FULL JOIN
JOIN ... USING
NATURAL JOIN
RIGHT JOIN
UNION
команды SELECT
реализует реляционную операцию
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить в одном столбце имена сотрудников 10-го отдела и их менеджеров. Выберите варианты запросов, соответствующие заданию.
TIMESTAMP
CHAR
NCHAR
STRING
VARCHAR
Оператор INSERT
:
DML
Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))
Запрос SQL предназначен для вставки в таблицу Branch
новой строки и имеет вид:
Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции при условии, что отдела с номером 10 ранее не существовало:
Branch_id | Branch_title | Location_id |
10 | Research | 11 |
Branch_id | Branch_title | Location_id |
10 | 11 | NULL |
Branch_id | Branch_title | Location_id |
10 | 11 | Research |
Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int)
Запрос SQL предназначен для вставки в таблицу Branch
новой строки и имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
и состоит из следующих кортежей:
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 имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
INSERT
не хватает ключевого слова TABLE
, которое должно следовать за ключевым словом INTO
SELECT
следовало использовать слово VALUES
SELECT
определены значения не для всех столбцов таблицы Worker
float
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Отношение Worker1
имеет схему:
Worker1: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос SQL предназначен для копирования информации о сотрудниках отдела №20 из таблицы Worker
в таблицу Worker1
:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата
VALUES (Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20)
SELECT Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20
(SELECT Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20)
SELECT * FROM Worker WHERE Group_id=20
AS SELECT Worker_id, Worker_name, Salary FROM Worker WHERE Branch_id=20
Для задания новых значений столбцам в запросе UPDATE
обязательно используется:
SET
SET COLUMN
COLUMN
WHERE
SET VALUES
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос предназначен для снижения на 10% оклада (Salary)
и премии (Commission_pct)
сотрудникам отдела №10.
Среди приведенных ниже кодов укажите вариант, которым можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.
Salary = Salary*0.9 AND Commission_pct = Commission_pct*0.9
Salary = Salary*0.9, Commission_pct = Commission_pct*0.9
Salary*0.9 AND Commission_pct*0.9
Salary, Commission_pct = (Salary*0.9, Commission_pct*0.9)
Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))
Запрос предназначен для перевода отдела № 10 в новое место расположения (Location_id=12
) и задания отделу № 20 нового названия – Consulting
.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос имеет вид:
При выполнении запроса сервера БД генерирует ошибку. Выберите действия, выполнение которых позволит исправить ошибку.
SET
(т.е. использовать вместо нее простое арифметическое выражение или числовую константу) SET
союзом AND
вместо запятой WHERE
SET
в подзапрос: (SELECT
функция FROM Worker
) SET
использовать словосочетание SET TABLE
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос предназначен для удаления записей о сотрудниках отдела №30.
Какие ключевые слова следует вставить вместо знаков подчеркивания для получения корректного запроса, решающего поставленную задачу.
CREATE TABLE
могут применяться параметры: precision
, scale
(точность, масштаб)?
float, real
int, bit
decimal, smallint
numeric, decimal
CREATE TABLE
:Branch_id INT DEFAULT (20)
Branch_id INT 20 BY DEFAULT
Branch_id INT DEFAULT VALUE = 20
Branch_id INT WITH DEFAULT 20
Branch_id INT DEFAULT 20
Ограничение PRIMARY KEY
:
NOT NULL
и UNIQUE
CHECK
UNIQUE
NOT NULL
PRIMARY KEY
Worker
использовалась следующая команда:
Отношение Worker
состоит из кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 10 | 20.05.98 |
Отношение Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
20 | Accounting | 12 |
Запрос SQL имеет вид:
DELETE FROM Branch WHERE Branch_id=10
Укажите, каким в результате выполнения данного запроса окажется отношение Worker
:
Worker
останется без изменений
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 20 | 20.05.98 |
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | NULL | 20.05.98 |
Worker
окажется пустым
Worker
с ограничением целостности, гарантирующим, что сумма (Salary + Salary*Commission_pct
) не будет больше 5000.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
CHECK (Salary + Salary*Commission_pct <=5000)
CHECK Salary + Salary*Commission_pct <=5000
, CONSTRAINT chk_sal CHECK (Salary + Salary*Commission_pct <=5000)
, CHECK (Salary + Salary*Commission_pct <=5000)
, CONSTRAINT CHECK (Salary + Salary*Commission_pct <=5000)
Worker
использовалась следующая команда:
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки, при условии, что первичным ключом в таблице Branch
является столбец Branch_id
Worker
не указывается явно соответствующий ему первичный ключ таблицы Branch
Salary
FOREIGN KEY
Worker
использовалось следующее определение:
Укажите, какие фразы предложения ALTER TABLE
позволят задать значение по умолчанию столбцу Salary
ADD DEFAULT 800 TO Salary
ADD CONSTRAINT DEFAULT 800 FOR Salary
ALTER COLUMN Salary FLOAT NOT NULL DEFAULT = 800
MODIFY COLUMNS (Salary FLOAT NOT NULL DEFAULT = 800)
ALTER COLUMN Salary SET DEFAULT 800
Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))
Отношение Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Для создания представления, в которое должны попасть только имена сотрудников, работающих в отделе ACCOUNTING
, используется запрос:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:
ON
FROM
AS
WITH CHECK OPTION
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Для создания индекса столбца таблицы Worker_name
таблицы Worker
, используется запрос:
CREATE ______________
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение запроса и получение требуемого результата:
INDEX index1 ON Worker (Worker_name)
INDEX TO Worker (Worker_name)
INDEX index1 ON TABLE Worker COLUMN Worker_name
INDEXES index1 FOR Worker (Worker_name)
Salary
таблицы Worker
зарегистрированному пользователю базы данных User1
.
____________________User1
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:
PERMIT UPDATE ON Worker (Salary) TO User1
GRANT TO User1 UPDATE ON Worker (Salary)
GRANT UPDATE TABLE Worker COLUMN Salary TO User1
PERMIT UPDATE Worker (Salary) FOR User1
GRANT UPDATE(Salary) ON Worker TO User1
Worker
зарегистрированному в базе данных пользователю User1
.
DROP INSERT ON Worker FROM User1
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит исправить ошибку и добиться требуемого результата
INSERT
словом INSERTION
FROM
предлогом TO
DROP
словом DENY
и заменить предлог FROM
предлогом TO
DROP
словом REVOKE
DROP
словом DELETE
(ISOLATION LEVEL)
, которые запрещают осуществлять обновление строк, считанных незафиксированными транзакциями, другим транзакциям.
REPEATABLE READ
SERIALIZABLE
READ COMMITTED
READ UNCOMMITTED
ALL
во фразе SELECT
означает
FROM
FROM
SELECT
WHERE
FROM
SELECT
INNER JOIN
ORDER
FROM t1 AS name1, t1 AS name2
FROM t1, t1
SELECT f.t FROM t
SELECT f1 AS name1, f1 AS name2
SELECT f1, f1
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Запрос SQL предназначен для получения имен сотрудников 10-го и 20-го отделов и имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают выполнение задания.
Branch_id BETWEEN 10 AND 20
Branch_id IN (20, 10)
Branch_id = 10 AND Branch_id = 20
Branch_id = 10 OR 20
Branch_id = 20 OR Branch_id = 10
Требуется отобрать сотрудников с фамилией (слово после знака подчеркивания) Adams. Выберите вариант условия, соответствующего заданию.
WHERE Worker_name LIKE 'Adams'
WHERE Worker_name LIKE '%_Adams'
WHERE Worker_name LIKE '%$_Adams' ESCAPE '_'
WHERE Worker_name LIKE '%#_Adams' ESCAPE '#'
WHERE Worker_name LIKE '%*_Adams%' ESCAPE '*'
Hiredate (timestamp)
.
ORDER BY Hiredate
ORDER BY Hiredate ASC
ORDER BY Hiredate ASK
ORDER BY Hiredate DESC
ORDER BY Hiredate DESK
AVR
COUNT
MAXIMUS
MINIMUM
SUM
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить номера сотрудников, являющихся менеджерами одновременно в нескольких отделах. (Manager_id
- номер сотрудника, являющегося менеджером для данного сотрудника).
Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.
FROM
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))
Требуется получить список сотрудников, работающих в тех же отделах, что и сотрудники с именем Alex. Выберите варианты запросов, соответствующие заданию.
Отношение t1
состоит из следующих кортежей:
f1 | f2 |
1 | 1 |
3 | 2 |
2 | 2 |
Отношение t2
состоит из следующих кортежей:
f1 | f2 |
1 | 10 |
2 | 20 |
3 | 30 |
Результат выполнения запроса
будет содержать
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить имя сотрудника и название отдела, в котором он работает.
Выберите варианты фрагмента запроса (вместо знака подчеркивания), соответствующие заданию.
Worker INNER NATURAL JOIN Branch
Worker NATURAL JOIN Branch
Worker NATURAL JOIN Branch ON Worker.Branch_id = Branch.Branch_id
Worker NATURAL JOIN Branch USING (Branch_id)
Worker NATURAL JOIN Branch WHERE Worker.Branch_id = Branch.Branch_id
t1
, содержащей 4 строки, в столбце f
содержатся значения 1, 2, 2, 3. В таблице t2
, содержащей 6 строк, в столбце f
содержатся значения 1, 2, 2, 3, 3, 4.
Сколько строк данных будет получено в результате выполнения запроса
t1
, содержащей 3 строки, имеется столбец f
со значениями 1, 2, 3. Пусть в таблице t2
, содержащей 4 строки, имеется столбец f
со значениями 1, 3, 4, 5.
Сколько строк данных будет получено в результате выполнения следующего запроса:
t1
, содержащей 4 строки, имеется столбец f
со значениями 1, 2, 2, 3. В таблице t2
, содержащей 5 строк, есть столбец f
со значениями 2, 2, 3, 3, 4.
Сколько строк данных вернет следующий запрос:
TIMESTAMP
DATE
TIME
TIME WITH TIME ZONE
TIMESTAMP WITH TIME ZONE
Фраза VALUES
:
INSERT
SELECT
INSERT
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (date)
Запрос SQL предназначен для вставки в таблицу Worker
новой строки и имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают безошибочное выполнение запроса
Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=20)
Запрос SQL предназначен для вставки в таблицу Branch
новой строки и имеет вид:
Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции при условии, что отдела с номером 10 ранее не существовало:
Branch_id | Branch_title | Location_id |
10 | NULL | NULL |
Branch_id | Branch_title | Location_id |
10 | NULL | 0 |
Branch_id | Branch_title | Location_id |
10 | NULL | 20 |
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
и состоит из следующих кортежей:
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 имеет вид:
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Выберите действие, выполнение которого позволит устранить ошибку:
VALUES
в тип timestamp
с помощью функции CAST
INSERT
названия столбцов Hire_date
и Worker_name
’01/04/2003’
, использовать строку ’01.04.2003 00:00:00.000’
‘Tomas’
использовать значение NULL
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Отношение Worker1
является пустым и имеет схему:
Worker1: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Запрос SQL предназначен для вставки новой строки в таблицу Worker1
о сотруднике с именем Robin
и окладом, равным среднему значению оклада в 20 отделе, рассчитываемому по данным таблицы Worker
.
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
VALUES (12, CASE (Branch_id) WHEN 20 THEN AVG(Salary), ‘Robin’)
VALUES (12, SELECT AVG(Salary) FROM Worker WHERE Branch_id=20, ‘Robin’)
SELECT 12, AVG(Salary), ‘Robin’ FROM Worker WHERE Branch_id=20
12, SELECT AVG(Salary) FROM Worker WHERE Branch_id=20, ‘Robin’
UPDATE
:CASCADE
OBJECT
IN TABLE
TABLE
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос предназначен для внесения изменений в записи о сотрудниках отдела №10. Для указанных записей номер отдела должен быть изменен на 30, а значение в поле Manager_id
стать равным 13.
Среди приведенных ниже кодов укажите вариант, которым можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.
SET VALUES (Branch_id = 30, Manager_id = 13)
SET (Branch_id = 30, Manager_id = 13)
COLUMN Branch_id = 30, Manager_id = 13
SET Branch_id = 30, Manager_id = 13
SET Branch_id = 30 AND Manager_id = 13
Worker
имеет схему
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос предназначен для увеличения премий сотрудникам, у которых оклад меньше 800, на 10% и уменьшения премий сотрудникам, у которых оклад выше 2000, на 20%.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
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 | 0.3 | 20 | 21.06.98 |
Отношение Branch
состоит из следующих кортежей:
Branch_id | Branch_title | Location_id | Rating |
10 | Accounting | 11 | High |
20 | Finance | 12 | Low |
Запрос SQL имеет вид:
Среди предложенных вариантов выберите, каким, в итоге, останется отношение Groups.
Groups
останется без изменений, т.к. запрос содержит ошибку, и выполнен не будет.
Branch_id | Branch_title | Location_id | Rating |
10 | Accounting | 11 | High |
20 | Finance | 12 | High |
Branch_id | Branch_title | Location_id | Rating |
10 | Accounting | 11 | HIGH |
20 | Finance | 12 | HIGH |
Branch_id | Branch_title | Location_id | Rating |
10 | Accounting | 11 | HIGH |
20 | Finance | 12 | Low |
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос предназначен для удаления записей о сотрудниках отдела №20, у которых в поле Manager_id
имеется значение 13.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Ключевое слово CONSTRAINT
в предложении CREATE TABLE
:
PRIMARY KEY
При выполнении запроса сервера БД генерирует ошибку. Выберите действие, выполнение которого позволит устранить ошибку:
DEFAULT
на значение, меньшее 1 DEFAULT
в определении столбца name
DECIMAL
столбца salary
на 1
DEFAULT
Для определения ограничений могут использоваться ключевые слова:
NULL
FOREIGN KEY REFERENCES
CHECK
RANGE
PRIMARY KEY
CHECK
FOREIGN KEY
NOT NULL
PRIMARY KEY
UNIQUE
Worker
использовалась следующая команда:
Отношение Worker
состоит из кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 10 | 20.05.98 |
Отношение Branch
состоит из кортежей:
Branch_id | Branch_title | Location_id |
10 | Accounting | 11 |
Запрос SQL имеет вид:
UPDATE Branch SET Branch_id = 40 WHERE Branch_id = 10
Укажите, каким в результате выполнения данного запроса окажется отношение Worker
:
Worker
останется без изменений, так как будет сгенерирована ошибка
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 20 | 20.05.98 |
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | NULL | 20.05.98 |
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.8 | 40 | 20.05.98 |
Worker
, для которой установлено ограничение, гарантирующее, что столбец Manager_id
будет принимать только значения 1 и 2.
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
CHECK (Manager_id = 1 OR 2)
CHECK (Manager_id = 1 OR Manager_id = 2)
, CONSTRAINT CHECK (Manager_id IN (1,2))
, CONSTRAINT chk_man CHECK (Manager_id IN (1,2))
, CHECK (Manager_id IN (1,2))
Worker
использовалась следующая команда:
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину ошибки при условии, что таблица Manager
существует, и в ней присутствует столбец Manager_nom
типа int
:
FOREIGN KEY
FOREIGN KEY
PRIMARY KEY
не задано имя ограничения
NOT NULL
может задавать только на уровне отдельного столбца, но не всей таблицы
ALTER TABLE
для указания на столбцы, подлежащие удалению
DROP
DROP COLUMN
DELETE COLUMN
DELETE
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int)
Для создания представления, в которое должны попасть только имена сотрудников, работающих в отделе Research
, используется запрос:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции и получение требуемого результата:
VIEW AS
view1 AS
VIEW view1
VIEW view1 AS SUBQUERY
VIEW view1 AS
Фраза WITH CHECK OPTION
в предложении CREATE VIEW
:
DML
инструкции, результатом выполнения которых будут строки, которые смогут отбираться запросом, лежащим в основе представления
(Salary)
таблицы Worker
зарегистрированному в базе данных пользователю User1
.
__________ UPDATE (Salary) ON Worker FROM User1
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата
REVOKE PRIVILEGES
REVOKE AS ANY USER
REVOKE
DENY AS ANY USER
DELETE PRIVILEGES
SELECT
INSERT
DELETE
REFERENCES
UPDATE
SAVE TRAN t
INSERT INTO имя_таблицы VALUES
(значения)
ROLLBACK
COMMIT
CREATE TABLE
имя таблицы (определение столбцов и ограничений)
FROM
может указываться
SELECT
, заключенная в круглые скобки SELECT
с помощью
SELECT ... WHERE ... IN (SELECT ...)
SELECT ... WHERE ... NOT IN (SELECT ...)
FROM
EXCEPT
INTERSECT
t1
и t2
есть столбец с именем f
. Выберите варианты, не содержащие ошибок.
SELECT f FROM t1, t2
SELECT f FROM t2
SELECT f.t2 FROM t1, t2
SELECT t1.f FROM t1 t2
SELECT t2.f FROM t2, t1
BETWEEN d1 AND d2
d1
и d2
включаются в диапазон d1
и d2
не включаются в диапазон d1
включается в диапазон, а значение d2
не включается d1
и d2
могут быть символьного типа d1
и d2
могут быть типа TIMESTAMP
Commission_pct
имеет некоторое значение.
Выберите условие, соответствующее заданию.
WHERE Commission_pct <> NULL
WHERE Commission_pct <> 0
WHERE Commission_pct IS NOT NULL
WHERE Commission_pct NOT IS NULL
WHERE NOT (Commission_pct IS NULL)
Что будет получено в результате выполнения этого запроса, если значение Branch_id
равно 30?
Accounting
30
NULL
Research
HAVING
WHERE
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить наибольшее значение зарплаты (Salary)
среди всех сотрудников. Полученное значение следует вывести под именем max
.
Выберите из предложенных вариантов те, которые обеспечивают выполнение задания.
SELECT max AS max(Salary) FROM Worker
SELECT max(Salary) FROM Worker
SELECT max(Salary) AS max FROM Worker
SELECT max(Salary) max FROM Worker
SELECT max(Salary) AS 'max' FROM Worker
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Запрос SQL имеет вид:
Данный запрос выводит
Worker
, где Worker_id = Manager_id
и Salary <= 1000
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить номера отделов, в которых работают сотрудники с самой низкой заработной платой. Выберите варианты условия (вместо знака подчеркивания), соответствующие заданию.
Salary <= ALL (SELECT Salary FROM Worker)
Salary <= ANY (SELECT Salary FROM Worker)
Salary <= EXISTS (SELECT MIN(Salary) FROM Worker)
Salary <= (SELECT MIN(Salary) FROM Worker)
Salary <= (SELECT Salary FROM Worker)
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить количество сотрудников, являющихся менеджерами. Выберите варианты запросов, соответствующие заданию.
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))
Требуется получить имя сотрудника и название отдела, в котором он работает. Выберите варианты фрагмента запроса (вместо знака подчеркивания), соответствующие заданию.
Worker, Branch
Worker INNER JOIN Branch ON Worker.Branch_id = Branch.Branch_id
Worker JOIN Branch USING (Branch_id)
Worker CROSS JOIN Branch
Worker RIGHT OUTER JOIN Branch ON Worker.Branch_id = Branch.Branch_id
JOIN ... USING
отличается от оператора NATURAL JOIN
тем, что
JOIN ... USING
соединяет таблицы по указанным одноименным столбцам JOIN ... USING
можно указать любые столбцы, по которым следует соединить таблицы NATURAL JOIN
соединяет таблицы по первичным ключам NATURAL JOIN
не указываются столбцы, по которым следует соединять таблицы Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int, NOT NULL), Hire_date (timestamp)
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (varchar (20))
Требуется получить названия отделов, в которых нет сотрудников. Выберите варианты запроса , соответствующие заданию.
Запрос1 UNION Запрос2
Чтобы в таблице после выполнения этого запроса остались только отличающиеся строки, необходимо:
DISTINCT
в Запрос1
DISTINCT
в Запрос2
DISTINCT
и в Запрос1
, и в Запрос2
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id(int), Salary (float, NOT NULL), Commission_pct (float), Branch_id (int), Hire_date (timestamp)
Требуется получить идентификаторы сотрудников, не являющихся менеджерами. Выберите варианты запросов, соответствующие заданию.
Отличие типов данных CHAR
и VARCHAR
заключается:
CHAR
переменные типа VARCHAR позволяют хранить данные переменной длины VARCHAR
переменные типа CHAR позволяют хранить данные переменной длины CHAR
для данных типа VARCHAR
может применяться явное преобразование с помощью функции CAST
Список значений во фразе VALUES
может включать:
DEFAULT
NULL
TOP
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (date)
Запрос SQL предназначен для вставки в таблицу Worker
новой строки и имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение запроса
ROW (10, ‘Tom’, ’12-JAN-03’)
VALUES (20, ‘Collin’, CAST (’12.01.08’ AS DATE))
SELECT (‘10’, ‘Mark’, ’12.01.08’)
SELECT ‘10’, ‘Mark’, ’12.01.08’
VALUES (10, DEFAULT, DEFAULT, CAST (’12.01.08’ AS DATE))
Branch
является пустым и имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)
Запрос SQL предназначен для вставки в таблицу Branch
новой строки и имеет вид:
Среди перечисленных вариантов укажите, каким будет результат выполнения приведенной выше операции:
Branch_id | Branch_title | Location_id |
21 | 17 | NULL |
Branch_id | Branch_title | Location_id |
20 | 17 | NULL |
Branch_id | Branch_title | Location_id |
20 | 17 | 30 |
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
и состоит из следующих кортежей:
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 имеет вид:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение запроса
DEFAULT,
NULL
1.3,
CAST (‘1.3’ AS float),
Branch
и имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)
Отношение Branch1
является пустым и имеет схему:
Branch1: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)
Запрос SQL имеет вид:
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
NULL
недопустимо во фразе SELECT
Оператор UPDATE
:
DCL
DML
WHERE
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос предназначен для снижения окладов (Salary)
и премий (Commission_pct)
на 10% у сотрудников отдела № 10.
Какие ключевые слова следует вставить вместо знаков подчеркивания для получения корректного запроса, решающего поставленную задачу?
SET
; второй фрагмент: cимвол ","; третий фрагмент: WHERE
COLUMNS
; второй фрагмент: AND
; третий фрагмент: IF
VALUES
; второй фрагмент: AND
; третий фрагмент: WHERE
SET
; второй фрагмент: cимвол ","; третий фрагмент: WHEN
SET COLUMNS
; второй фрагмент: cимвол ","; третий фрагмент: WHEN
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Запрос предназначен для увеличения сотруднику с номером 15 оклада на 20% и перевода сотрудника с номером 17 в отдел №20.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Worker
состоит из кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | James | 15 | 1100 | 0.8 | 10 | 02.01.98 |
12 | Ronald | 19 | 1100 | NULL | 20 | 15.07.98 |
Отношение Worker1
состоит из кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
13 | Tom | 16 | 900 | 0.7 | 10 | 20.05.98 |
14 | Alex | 18 | 800 | 0.5 | 20 | 21.06.98 |
Запрос SQL имеет вид:
Среди предложенных вариантов выберите, каким, в итоге, останется отношение Worker
.
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | James | 15 | 1210 | 0.8 | 10 | 02.01.98 |
12 | Ronald | 19 | 1100 | NULL | 20 | 15.07.98 |
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | James | 15 | 990 | 0.8 | 10 | 02.01.98 |
12 | Ronald | 19 | 990 | NULL | 20 | 15.07.98 |
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | James | 15 | 990 | 0.8 | 10 | 02.01.98 |
12 | Ronald | 19 | 990 | NULL | 20 | 15.07.98 |
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | James | 15 | 990 | 0.8 | 10 | 02.01.98 |
12 | Ronald | 19 | 1100 | NULL | 20 | 15.07.98 |
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp)
Отношение Branch
имеет схему
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int, default=30)
Запрос предназначен для удаления записей о сотрудниках, работающих в отделе Accounting (Branch_title)
.
Среди приведенных ниже вариантов укажите тот, который при замене знаков подчеркивания обеспечивает получение корректного запроса, решающего поставленную задачу.
Оператор CREATE TABLE
:
DML
(язык манипулирования данными)
DCL (язык управления данными)
NULL
, в предложении CREATE TABLE
:Person_id INT PRIMARY KEY
Person_id INT IS NOT NULL
Person_id INT NOT NULL
Person_id INT NOT EQUALS NULL
Person_id INT NOT EMPTY
Ограничение FOREIGN KEY
NOT NULL
CHECK
NOT NULL
UNIQUE
PRIMARY KEY
FOREIGN KEY
Branch
использовалась следующая команда:
Отношение Branch
состоит из кортежей:
Branch_id | Branch_title | Location_id |
20 | Sales | 10 |
Отношение Location
состоит из следующих кортежей:
Location_id | Country_name | City_name | Street | Building |
10 | Account | 9.8 | Zhukov | 12 |
20 | Sales | 6.2 | Lenin | 13 |
Запрос SQL имеет вид:
UPDATE Location SET Location_id = 80 WHERE Location_id=10
Укажите, каким в результате выполнения данного запроса окажется отношение Branch:
Branch_id | Branch_title | Location_id |
20 | Sales | NULL |
Branch_id | Branch_title | Location_id |
20 | Sales | 20 |
Worker
, первичным ключом которой является совокупность столбцов:
Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:
Worker
использовалась следующая команда:
Отношение Worker
состоит из кортежей:
Worker_id | Worker_name | Manager_id | Salary | Commission_pct | Branch_id | Hire_date |
11 | Tom | 15 | 1000 | 0.9 | 10 | 20.05.98 |
Отношение Branch
состоит из кортежей
Branch_id | Branch_title | Location_id |
10 | Sales | NULL |
Запрос SQL имеет вид:
UPDATE Worker SET Commission_pct = 0.8, Branch_id = 20 WHERE Branch_id=10
В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:
SET
разделены запятой, что недопустимо
Salary + Salary * Commission_pct
для новой строки принимает значение, не превышающее 1800
Commission_pct
Branch
отсутствует запись об отделе с номером 20
Worker
использовалось следующее определение:
Запрос предназначен для вставки в таблицу Worker
нового столбца Commission_pct
c ограничением, устанавливающим минимальное значение для этого столбца, равное 0.1
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:
ADD COLUMN Commission_pct CHECK (Commission_pct >= 0.1)
ADD COLUMN Commission_pct FLOAT CHECK (Commission_pct >= 0.1)
ADD COLUMN Commission_pct FLOAT DEFAULT 0.1
ADD COLUMN Commission_pct FLOAT ADD CONSTRAINT c1 CHECK (Commission_pct >= 0.1)
Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name (varchar (30)), Manager_id (int), Salary (float), Commission_pct (float), Branch_id (int, FK)
Отношение Branch
имеет схему:
Branch: Branch_id (int PK), Branch_title (varchar (30)), Location_id (int)
Для создания представления используется запрос:
Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают безошибочное выполнение операции:
SELECT Worker_id, Worker_name, Branch_id FROM Worker
(Worker_id, Worker_name, Branch_id FROM Worker)
SELECT * FROM Worker
Представления:
SELECT
Worker
зарегистрированному пользователю базы данных User1
.
__________________TO User1
Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает безошибочное выполнение операции:
GRANT SELECTION ON Worker
GRANT SELECT ON Worker
PERMIT SELECT FROM Worker
PERMIT SELECT ON TABLE Worker
GRANT SELECT FROM Worker
Worker
и просмотр этой же таблицы у пользователя User1
.
REVOKE INSERT AND SELECT ON Worker FROM User1
При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:
REVOKE
следовало использовать ключевое слово DENY
INSERT
следовало добавить ON Worker
REVOKE
не позволяет одновременно удалять несколько привилегий AND
, что недопустимо EXIT
имя точки сохранения
ROLLBACK
CANCEL
STOP
ABORT