Главная / Базы данных / SQL (Oracle): Основы

SQL (Oracle): Основы - ответы на тесты Интуит

Правильные ответы выделены зелёным цветом.
Все ответы: Проверка знаний синтаксиса и семантики основных конструкций оператора SELECT, используемых при организации запросов на выборку данных из БД.
Смотрите также:

Для задания условий сортировки могут использоваться:

(1) только названия столбцов
(2) только названия столбцов и арифметические выражения
(3) только названия столбцов, псевдонимы столбцов и арифметические выражения
(4) названия столбцов, арифметические выражения, псевдонимы столбцов и порядковые номера столбцов и выражений, заданные во фразе SELECT
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number)

Запрос предназначен для отображения названий улиц и номеров домов всех присутствующих в таблице адресов. Столбец, указывающий на номер дома (в схеме он называется House), должен называться в итоговом отчете "House number". Итоговый отчет должен быть отсортирован в возрастающем порядке по названиям улиц, а внутри групп – по номерам домов (тоже в порядке возрастания):

SELECT Street, House __________ FROM Address ORDER BY ___________

Среди приведенных ниже кодов укажите варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу:

(1) первый фрагмент: House number, второй фрагмент: Street asc, House
(2) первый фрагмент: "House number", второй фрагмент: Street, House
(3) первый фрагмент: 'House number', второй фрагмент: Street, House
(4) первый фрагмент: as "House number", второй фрагмент: Street asc, House asc
(5) первый фрагмент: as "House number", второй фрагмент: Street desc, House desc
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

и содержит данные:

Address_idCountryCityRegionStreetHouseFlat
11RussiaMoscowZhukova45
12RussiaMoscowLenina15

Запрос имеет следующий вид:

SELECT House+10 as report FROM Address

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
House+10
55
(2)
report
55
NULL
(3)
(No column name)
55
10
(4)
report
NULL
NULL
(5) сервер БД сгенерирует ошибку
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос, предназначенный для генерации отчета, состоящего из одного столбца, который должен включать для каждого соискателя имя и дополнительную информацию (Add_ Info) имеет вид:

SELECT Person_name || " " || Add_Info FROM Persons

При выполнении запроса сервер БД генерирует ошибку. Среди предложенных вариантов укажите правильную причину ошибки:

(1) строковая константа в предложении SELECT должна заключаться в апострофы, а не в двойные кавычки
(2) операция конкатенации может встречаться в выражении не более одного раза
(3) операция конкатенации может применяться только во фразе условия WHERE, но не во фразе SELECT
(4) неверная запись оператора конкатенации. Вместо "||" следует использовать "+"
Укажите, какое из перечисленных утверждений является истинным:

Оператор IN:

(1) используется только для сравнения числовых значений
(2) используется для проверки попадания значения в заданный диапазон
(3) используется для проверки вхождения значения в заданный список
(4) не может применяться для создания условий с данными типа date
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

и содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Lincoln25.03.1981Bad discipline41011
12Li28.09.197851215
13Lim21.02.198351314

Запрос имеет следующий вид:

SELECT Person_name FROM Persons WHERE Person_name like 'Li_'

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Person_name
Lincoln
Li
Lim
(2)
Person_name
Lim
(3)
Person_name
Lincoln
Lim
(4)
Person_name
Li
Lim
(5) ни одна строка не будет отобрана
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (100)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для получения отчета, содержащего информацию о именах и датах рождения сотрудников, для которых помимо имени известна и фамилия (фамилия отделяется от имени символом "_" в столбце Person_name, например Steven_Tyler).

SELECT Person_name, Day_Of_Birth FROM Persons WHERE __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) Person_name LIKE "%!_%" ESCAPE "!"
(2) Person_name LIKE "%_%"
(3) Person_name LIKE '%[_]%'
(4) Person_name LIKE '%ESCAPE_%'
(5) Person_name LIKE '%!_%' ESCAPE '!'
Выберите из предложенного списка вариант с правильной расстановкой приоритетов (очередности выполнения) различных групп операторов:
(1) Арифметические операторы Оператор конкатенации Логические операторы (AND, OR)
(2) Логические операторы (AND, OR) Оператор конкатенации Арифметические операторы
(3) Логические операторы (AND, OR) Арифметические операторы Операторы сравнения (<, >, = …)
(4) Арифметические операторы Операторы сравнения (<, >, = …) Оператор конкатенации
(5) ничего из перечисленного
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number NOT NULL), Flat (number NOT NULL)

Запрос предназначен для получения отчета, содержащего идентификаторы Московских и Санкт-Петербургских адресов (City = 'Moscow' или 'St.Petersburg'), сумма House + Flat которых превышает 150.

SELECT Address_id FROM Address WHERE __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) (City = 'Moscow' or City = 'St.Petersburg') and House + Flat >150
(2) City = 'Moscow' or City = 'St.Petersburg' and House + Flat >150
(3) (City = 'Moscow' and House + Flat > 150) or (City = 'St.Petersburg' and House + Flat >150)
(4) City = 'Moscow' and House + Flat > 150 or City = 'St.Petersburg' and House + Flat >150
Какие из перечисленных функций не являются функциями работы со строками:
(1) LOWER
(2) AVG
(3) LENGTH
(4) NVL
(5) TRIM
(6) LPAD
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для отображения имен соискателей и их адресов. Для соискателей, имена которых не представлены в таблице, в столбце Person_name итогового отчета должно быть значение «unknown»:

SELECT _________, Address FROM Persons

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) nvl (to_string (Person_name), 'unknown')
(2) ifnull (Person_name, 'unknown')
(3) isnull (Person_name, 'unknown')
(4) nvl2 (Person_name, 'unknown', 'unknown')
(5) nvl2 (Person_name, Person_name, 'unknown')
Имеется модель данных:files

, где таблица Recent_Jobs имеет структуру:

Recent_Jobs: Job_id (number PK), Position (varchar2 (40)), Started_from (date), Lasted_to (date), Employer_comments (varchar2 (200)), Sal (number)

Запрос предназначен для получения отчета, содержащего идентификаторы должностей (Job_id), занимаемых ранее соискателями, и оклады по этим должностям, округленные до сотен.

SELECT Job_id, ____________ FROM Recent_Jobs

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) ROUND (isnull (Sal, 0),-1)
(2) RND (nvl (Sal, 0),-2)
(3) ROUND (nvl (Sal, 0),-2)
(4) TRUNCATE (Sal, 2)
(5) ROUND (nvl2 (Sal, Sal, 0),-2)
Запрос имеет следующий вид: SELECT substr ('Moscow', 2, 3) from dual

Среди представленных вариантов выберите корректный вариант итогового отчета:

(1)
(No column name)
OSC
(2)
(No column name)
osc
(3)
(No column name)
sco
(4)
(No column name)
sc
(5) сервер сгенерирует ошибку
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для отображения имен соискателей и идентификаторов их специальностей (Specialty_id). Значения столбца Specialty_id для соискателей, которые не обладают никакой специальностью, в итоговом отчете должны соответствовать шаблону: "Name has no specialty"

SELECT Person_name name, nvl2 (to_char (Specialty_id), to_char (Specialty_id), name || ' has no specialty') FROM Persons

При попытке выполнить запрос сервер БД генерирует ошибку. Укажите правильную причину ошибки:

(1) неверное число аргументов функции to_char
(2) функции nvl2 не существует
(3) аргументы, переданные в функцию nvl2, обладают некорректными типами данных
(4) неверный синтаксис оператора конкатенации, который используется в третьем аргументе функции nvl2
(5) псевдонимы столбцов не могут использоваться в качестве аргументов функций
Текущая дата: 15 сентября 2008 г. (Пятница) Запрос имеет следующий вид: select UPPER(substr (to_char (sysdate, 'DAY'), 1, 3)) report from dual;

Среди представленных вариантов выберите корректный вариант итогового отчета, если в БД заданы английские языковые настройки:

(1)
report
ПЯТ
(2)
report
5
(3)
report
FRI
(4)
report
Пят
(5) сервер сгенерирует ошибку
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (100)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для отображения имен соискателей, старше 27 лет.

SELECT Person_name FROM Persons WHERE _______________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата

(1) to_char (sysdate – Day_Of_Birth, 'yy') > 27
(2) years_between (sysdate, Day_Of_Birth) > 27
(3) trunc (months_between (sysdate, Day_Of_Birth) /12) > 27
(4) trunc (days_between (sysdate, Day_Of_Birth) /365) > 27
(5) все варианты неверны
Имеется модель данных:files

, где таблица Address содержит данные:

Address_idCountryCityRegionStreetHouse
11RussiaMoscowZhukova45
12RussiaMoscowMoscow regionLenina

Запрос имеет следующий вид:

SELECT Address_id, Country, Decode (Region, NULL, 'no region', 'region') as region FROM Address

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Address_idCountryregion
11Russiano region
12RussiaMoscow region
(2) сервер БД сгенерирует ошибку
(3)
Address_idCountryregion
11Russiano region
12Russiano region
(4)
Address_idCountryregion
11Russiano region
12Russiaregion
(5)
Address_idCountryregion
11Russia
12RussiaMoscow region

Функция AVG:

(1) используется для подсчета во всей выборке (каждой группе выборки) числа значений выбранного столбца, отличных от NULL
(2) используется для вычисления дисперсии значений выбранного столбца во всей выборке или в каждой группе строк выборки
(3) используется для вычисления математического ожидания значений выбранного столбца во всей выборке или в каждой группе строк выборки
(4) используется для вычисления среднего арифметического значений выбранного столбца во всей выборке или в каждой группе строк выборки
(5) возвращает значение NULL, если переданное в качестве аргумента выражение или столбец, принимает для одной из строк, обрабатываемых этой функцией, неопределенное значение
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Lincoln25.03.1981Bad discipline41011
12Li28.09.197851215
1321.02.198351314

Запрос имеет следующий вид:

SELECT AVG (LENGTH (Person_name)) as report FROM Persons

Выберите среди предложенных вариантов верный вариант итогового отчета, при условии, что тип поля Person_name определен как Varchar2:

(1) сервер БД сгенерирует ошибку
(2)
report
NULL
(3)
report
3
(4)
report
6
(5)
report
4.5
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

Запрос предназначен для подсчета числа Московских адресов (City = Moscow), для которых не указано название улицы (столбец Street равен NULL)

SELECT _______________ FROM Address _____________________

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) первый фрагмент: ADD (Address_id) – ADD (null Street) второй фрагмент: where City = 'Moscow'
(2) первый фрагмент: COUNT (Address_id) – COUNT (Street) второй фрагмент: where City = 'Moscow'
(3) первый фрагмент: COUNT (Address_id) – COUNT (Street) второй фрагмент: GROUP City = 'Moscow'
(4) первый фрагмент: COUNT (nvl (Street, 'value1')) – COUNT (Street) второй фрагмент: where City = 'Moscow'

Фраза HAVING:

(1) может включать такие операторы сравнения, как: betweenand, like, in
(2) может включать только столбцы и выражения, которые присутствуют во фразе GROUP BY или передаются в качестве аргументов в групповые функции этой же фразы (HAVING), не принимая во внимание подзапросы
(3) не допускает использования подзапросов
(4) используется для исключения групп из итоговой выборки
(5) используется для задания столбцов и выражений, по которым следует осуществлять группировку
Имеется модель данных:files

, где таблица Recent_Jobs имеет структуру:

Recent_Jobs: Job_id (number PK), Position (varchar2 (40)), Started_from (date), Lasted_to (date), Employer_comments (varchar2 (200)), Sal (number)

Запрос предназначен для отображения информации о среднем окладе (Sal) соискателей, которые занимали должность Manager (Position = 'Manager') в 2002 году:

SELECT AVG (Sal) FROM Recent_Jobs GROUP BY Position HAVING Position = 'Manager' and 2002 between to_char (Started_from, 'yyyy') and to_char (Lasted_to, 'yyyy')

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке.

Укажите правильную причину возникновения ошибки.

(1) во фразе SELECT пропущено название столбца, по которому осуществляется группировка
(2) неправильная позиция фразы HAVING в предложении SELECT (эта фраза должна находиться перед фразой GROUP BY)
(3) во фразе HAVING не может присутствовать столбец (выражение), которого нет во фразе GROUP BY, или который не передан в качестве аргумента в групповую функцию
(4) во фразе HAVING не может быть составных условий
(5) сервер не может выполнить явное преобразование символьных значений, возвращаемых функцией to_char, в числовые значения
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

files
Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999400
13Salesman600
14Manager600

Запрос имеет следующий вид:

SELECT MAX (Sal) report FROM Recent_Jobs GROUP BY Position HAVING MAX (SAL) <> AVG (SAL)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
report
500
(2)
report
600
(3) сервер БД сгенерирует ошибку
(4)
report
500
600
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30) NOT NULL), City (varchar2 (30) NOT NULL), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

Запрос предназначен для подсчета числа неполных Московских адресов, т.е. адресов, в которых пропущено название улицы (Street), номера дома (House) или номера квартиры (Flat)

SELECT ________ FROM Address ___________

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) первый фрагмент: count (Address_id) – count (all Street) – count (all House) – count (all Flat) второй фрагмент: group by City having City = 'Moscow'
(2) первый фрагмент: count (Address_id) – count (Street || House ||Flat) второй фрагмент: where City = 'Moscow'
(3) первый фрагмент: count (Address_id) второй фрагмент: where City = 'Moscow' and (Street is null or House is null or Flat is null)
(4) первый фрагмент: count (Address_id) второй фрагмент: where City = 'Moscow' group by City having Street is null or House is null or Flat is null
(5) первый фрагмент: count (Address_id) второй фрагмент: where Street is null or House is null or Flat is null group by City having City = 'Moscow'
Какие из перечисленных операций реляционной алгебры, могут лежать в основе соединения строк из нескольких таблиц
(1) эквисоединение
(2) проекция
(3) натуральное соединение
(4) внешнее соединение
(5) пересечение
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

, таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30) NOT NULL), City (varchar2 (30) NOT NULL), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

Запрос, предназначенный для отображения имен соискателей, проживающих в Москве (Address.City = 'Moscow'), имеет вид:

SELECT Persons.Person_name FROM Persons p, Address a WHERE p.Address_id = a.Address_id and a.Address.City ='Moscow'

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите действия, выполнение которых позволит исправить ошибку:

(1) заменить ключевое слово WHERE ключевым словом JOIN
(2) заменить во фразе WHERE псевдонимы таблиц, которые используются в качестве префиксов в названии столбцов, полными названиями таблиц
(3) заменить во фразе SELECT префикс Persons (в названии столбца Person_name) префиксом p
(4) удалить псевдонимы таблиц во фразе FROM и заменить во фразе WHERE псевдонимы таблиц, которые используются в качестве префиксов в названии столбцов, полными названиями таблиц
(5) заменить ключевое слово WHERE словосочетанием NATURAL JOIN
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (100)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

, таблица Recent_Jobs имеет структуру:

Recent_Jobs: Job_id (number PK), Position (varchar2 (40)), Started_from (date), Lasted_to (date), Employer_comments (varchar2 (200)), Sal (number)

Запрос SQL предназначен для отображения имен соискателей и соответствующих им должностей с предыдущего места работы (Recent_Jobs.Position). В отчет также должны попасть соискатели, которые ранее не работали (в поле Job_id отсутствует какое-либо значение)

SELECT Person_name, Position FROM _________________________ ORDER BY 2

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) Persons p, Recent_Jobs r where p.Job_id (+) = r.Job_id
(2) Persons p, Recent_Jobs r where p.Job_id = r.Job_id (+)
(3) Persons p LEFT OUTER JOIN Recent_Jobs r where p.Job_id = r.Job_id
(4) Persons p LEFT OUTER JOIN Recent_Jobs r on p.Job_id = r.Job_id
(5) Persons p RIGHT OUTER JOIN Recent_Jobs r on p.Job_id = r.Job_id
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

, таблица Skills имеет структуру:

Skills: Skill_id (number, PK), Skill_title (varchar2 (50))

, таблица Person_Skill имеет структуру:

Person_Skill: Person_id (number, PK, FK), Skill_id (number, PK, FK)

Запрос SQL предназначен для отображения имен соискателей и наименований соответствующих им навыков. В итоговый отчет должны попасть только те специалисты, которые обладают навыком "Windows administrator".

SELECT p.Person_name, s.Skill_title FROM Persons p JOIN Person_Skill ____p.Person_id = Person_Skill.Person_id JOIN Skills s ____ s.Skill_id = Person_Skill.Skill_id ____ s.Skill_title like 'Windows administrator'

Какие ключевые слова следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.

(1) первый фрагмент: on; второй фрагмент: on; третий фрагмент: and
(2) первый фрагмент: on; второй фрагмент: on; третий фрагмент: where
(3) первый фрагмент: using; второй фрагмент: using; третий фрагмент: where
(4) первый фрагмент: on; второй фрагмент: on; третий фрагмент: on
Имеется модель данных:files

, где таблица Skills содержит данные:

Skill_idSkill_nameGenaral_skill
11Data Bases
15Data Base Administration11
13Programming
14Java programming13

Запрос SQL имеет следующий вид:

SELECT s.Skill_name as name1, g.Skill_name as name2 FROM Skills s, Skills g WHERE s.General_skill = g.Skill_id AND substr (s.Skill_name, 1, 1) >= substr (g.Skill_name, 1, 1)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) сервер БД сгенерирует ошибку
(2)
name1name2
Data Base AdministrationData Bases
Java programmingProgramming
(3)
name1name2
Data Base AdministrationData Bases
(4)
name1name2
Data BasesData Base Administration
(5)
name1name2
Data BasesData Base Administration
ProgrammingJava programming
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Lincoln25.03.1981Bad discipline41011
12Tom28.09.197851215
13Tony21.02.197751315

, таблица Age_grade содержит данные:

Grade_idLowest_ageHighest_age
11829
23070

Запрос SQL имеет вид:

SELECT Person_name, Grade_id FROM Persons JOIN Age_Grade On trunc (months_between (sysdate, Day_Of_Birth)/12) between Lowest_age and Highest_age AND Grade_id <> 1

Выберите среди предложенных вариантов верный вариант итогового отчета, при условии, что текущей датой является 27.07.2008:

(1)
Person_nameGrade_id
Lincoln2
Tom2
Tony2
(2)
Person_nameGrade_id
Tom2
Tony2
(3)
Person_nameGrade_id
Tom1
(4)
Person_nameGrade_id
Tony2
(5) сервер сгенерирует ошибку
В каких фразах предложения SELECT могут присутствовать подзапросы
(1) WHERE
(2) HAVING
(3) FROM
(4) GROUP BY
(5) SELECT
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (100)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK), Des_Salary (number):

Запрос предназначен для отображения соискателей с ожидаемой зарплатой (Des_Salary), не меньшей среднеарифметического значения этой величины по всем соискателям.

SELECT Person_name, Des_Salary FROM Persons WHERE Des_Salary________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) >= AVG (Des_Salary)
(2) >= "select AVG (Des_Salary) from Persons"
(3) >= (select AVG (nvl (Des_Salary, 0)) from Persons)
(4) >= select AVG (nvl (Des_Salary, 0)) from Persons
(5) between (select AVG (nvl (Des_Salary, 0)) from Persons) and (select MAX (nvl (Des_Salary, 0)) from Persons)
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_idDes_Salary
11Jorge25.03.198141011
12Tom28.09.197851215200
13Tony21.02.197751315300

Запрос SQL имеет следующий вид:

SELECT Person_name name From Persons Where Des_Salary = (select min (nvl (Des_Salary, 0)) from Persons where Specialty_id = 4)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
Jorge
(2) сервер БД сгенерирует ошибку
(3)
name
Tom
(4) строки не выбраны
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_idDes_Salary
11Jorge25.03.197841011
12Tom28.09.197851215200

Запрос SQL имеет вид:

SELECT Person_name as "name" FROM Persons p WHERE Des_Salary >= (SELECT Des_Salary from Persons where Person_id in (11, 12))

При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) синтаксис SQL в ORACLE допускает только однострочные подзапросы
(2) подзапрос возвращает несколько строк, тогда как оператор сравнения > может применяться только для однострочных подзапросов
(3) ключевое слово as во фразе SELECT является лишним
(4) названиям столбцов во фразе SELECT и WHERE должен предшествовать префикс "p"
(5) подзапрос должен заключаться в кавычки, а не в скобки
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK), Des_Salary (number):

Запрос предназначен для отображения соискателей с ожидаемой зарплатой (Des_Salary), превышающей ожидаемые зарплаты ВСЕХ соискателей, обладающих специальностью с идентификатором 4 (Specialty_id = 4).

SELECT Person_name FROM Persons WHERE Des_Salary__________ (select nvl (Des_Salary, 0) from Persons where Specialty_id =4)

Укажите оператор сравнения, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) > all
(2) >
(3) gt; in
(4) > any
Имеется модель данных:files

, где таблица Age_grade имеет структуру:

Age_grade: Grade_id (number, PK), Lowest_age (number), Highest_age (number)

, таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

Запрос предназначен для отображения имен соискателей, возраст которых попадает в третью возрастную группу (Grade_id).

SELECT Person_name FROM Persons WHERE _________ (SELECT Lowest_age, Highest_age from Age_grade where___________)

Выберите из предложенных вариантов тот, который при подстановке вместо знаков подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата

(1) первый фрагмент: trunc (months_between (sysdate, Day_Of_Birth)/12) IN второй фрагмент: Grade_id =3
(2) первый фрагмент: trunc (months_between (sysdate, Day_Of_Birth)/12) BETWEEN второй фрагмент: Grade_id =3
(3) первый фрагмент: PRESENTS второй фрагмент: trunc (months_between (sysdate, Day_Of_Birth)/12) between Lowest_age and Highest_age and Grade_id =3
(4) первый фрагмент: EXISTS второй фрагмент: trunc (months_between (sysdate, Day_Of_Birth)/12) between Lowest_age and Highest_age and Grade_id =3
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Lincoln25.03.1978Bad discipline41011
12Tom15.04.197551215
11Lincoln15.04.197541013
14Ronald25.03.197844502

Запрос SQL имеет вид:

SELECT Person_name FROM Persons p WHERE (Specialty_id, Day_Of_Birth) in (SELECT Specialty_id, Day_Of_Birth FROM Persons WHERE Person_name = 'Lincoln') AND Person_name <> 'Lincoln'

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) сервер БД сгенерирует ошибку
(2)
Person_name
Ronald
(3) строки не выбраны
(4)
Person_name
Tom
(5)
Person_name
Tom
Ronald

Оператор UNION ALL:

(1) является бинарным оператором
(2) используется для получения пересечения результатов выборки операторов SELECT
(3) используется для получения объединения результатов выборки операторов SELECT c исключением повторяющихся строк
(4) не существует
(5) используется для объединения результатов выборки операторов SELECT c включением повторяющихся строк

Таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Michel25.03.1978Bad discipline41011
12Tom15.04.197551215

Таблица Persons1 содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Dennis25.03.197841013
12James15.04.197544502

Запрос SQL имеет вид:

SELECT length (Person_name) name from Persons MINUS SELECT length (Person_name) name from Persons1

Выберите среди предложенных вариантов верный вариант итогового отчета, при условии, что столбцы Person_name обладают типом Varchar2:

(1) сервер БД сгенерирует ошибку
(2)
name
6
3
(3)
name
Tom
(4)
name
3
(5) строки не выбраны

Таблица Skills имеет структуру:

Skills: Skill_id (number PK), Skill_title (varchar2 (30)), General_skill (number)

Таблица Specialties имеет структуру:

Specialties: Specialty_id (number PK), Specialty_title (varchar2 (30))

Запрос предназначен для отображения совпадающих названий навыков и специальностей

SELECT Skill_title title FROM Skills ________________ SELECT Specialty_title title FROM Specialties

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата

(1) INTERSECT DISTINCT
(2) EXCEPT
(3) INTERSECTION
(4) EXISTS
(5) INTERSECT

Значение NULL:

(1) в выражениях неявно заменяется на значение «ноль» или пробел
(2) при использовании в арифметическом выражении приводит к тому, что выражение принимает неопределенное значение
(3) то же самое, что и "пробел"
(4) означает, что значение недоступно, не присвоено или неизвестно
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (char (25)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос SQL предназначен для выборки всех столбцов из таблицы Persons (получения полной информации обо всех людях):

SELECT ________________ FROM Persons

Из приведенных ниже вариантов кода укажите тот вариант, которым можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.

(1) ALL
(2) ALL COLUMNS
(3) ALL_COLL
(4) FULL
(5) *
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Tom25.03.1981Bad discipline41011
12Alex28.09.197851215

Запрос SQL предназначен для выборки всех имен соискателей, дат рождений и касающихся их примечаний (Add_info) из таблицы Persons и сортировки итогового отчета в порядке возрастания возраста соискателей:

SELECT Person_name, Day_Of_Birth as Day of birth, Add_Info FROM Persons ORDER BY 2 desc

При выполнении запроса сервер БД генерирует ошибку. Среди предложенных вариантов укажите правильную причину возникновения ошибки:

(1) псевдоним, который используется во фразе SELECT, не заключен в двойные кавычки
(2) во фразе ORDER BY был использован аргумент, не являющийся названием или псевдонимом какого-либо столбца
(3) ключевое слово desc не может использоваться во фразе ORDER BY
(4) фраза ORDER BY не может следовать за фразой FROM
(5) фразы ORDER BY не существует, вместо нее следовало использовать ключевое слово ORDER
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

и содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Tom25.03.1981Bad discipline41011
12Alex28.09.197811215

Запрос SQL имеет вид

SELECT Person_name || ' has specialty' || Specialty_id "new report" FROM Persons ORDER BY Specialty_id desc

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса.

(1)
"new report"
Tom has specialty 4
Alex has specialty 1
(2)
new report
Tom has specialty4
Alex has specialty1
(3)
new report
Alex has specialty 1
Tom has specialty 4
(4) сервер БД сгенерирует ошибку
(5)
new report
Tomhas specialty4
Выберите из предложенного списка вариант с правильной расстановкой приоритетов (очередности выполнения) различных групп операторов:
(1) Арифметические операторы Операторы сравнения (<, >, = …) Логические операторы (AND, OR)
(2) Логические операторы (AND, OR) Операторы сравнения (<, >, = …) Арифметические операторы
(3) Логические операторы (AND, OR) Арифметические операторы Операторы сравнения (<, >, = …)
(4) Арифметические операторы Логические операторы (AND, OR) Операторы сравнения (<, >, = …)
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number NOT NULL CHECK (House > 0)), Flat (number NOT NULL CHECK (Flat > 0))

Запрос предназначен для отображения идентификаторов ВСЕХ адресов, для которых номер дома и номер квартиры в сумме (House+Flat) от 150 и ниже.

SELECT Address_id FROM Address WHERE ___________

Среди приведенных ниже кодов укажите варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу

(1) House + Flat IN (0, 150)
(2) House + Flat BETWEEN (0, 150)
(3) House + Flat BETWEEN 0 AND 150
(4) House + Flat =< 150
(5) House + Flat <= 150
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для получения отчета, содержащего информацию обо всех соискателях, имена которых начинаются с символов "А", "В", "С" и "K".

SELECT Person_name FROM Persons Where __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) Person_name LIKE '[A-C,K] %'
(2) Person_name < 'D' OR Person_name LIKE 'K%'
(3) Person_name LIKE 'A%' OR Person_name LIKE 'B%' OR Person_name LIKE 'C%' OR Person_name LIKE 'K%'
(4) Person_name IN ('A', 'B', 'C', 'K')
(5) Person_name LIKE "C%" OR Person_name LIKE "A%" OR Person_name LIKE "B%" OR Person_name LIKE "K%"

Оператор ESCAPE:

(1) может использоваться в сочетании с оператором LIKE
(2) применяется для исключения из диапазона, задаваемого оператором BETWEENAND, конкретных значений
(3) применяется для исключения из списка, задаваемого оператором IN, конкретных значений
(4) не существует
(5) может применяться для поиска в строках метасимволов: "_" и "%".
Имеется модель данных:files

, где таблица Recent_Jobs имеет структуру:

Recent_Jobs: Job_id (number PK), Position (varchar2 (40)), Started_from (date), Lasted_to (date), Employer_comments (varchar2 (200))

Запрос предназначен для нахождения всех записей таблицы Recent_Jobs о должностях Manager, на которые соискатели назначались или снимались в период с 1995 до 1998 год.

SELECT * FROM Recent_Jobs WHERE __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата, при условии, что форматом даты по умолчанию является формат "dd.mm.yyyy":

(1) Position = 'Manager' and (Started_from between '01.01.1995' and '31.12.1997' or Lasted_to between '01.01.1995' and '31.12.1997')
(2) Position = 'Manager' and Started_from between '01.01.1995' and '31.12.1997' or Lasted_to between '01.01.1995' and '01.01.1997'
(3) Position = 'Manager' and Started_from between '01.01.1995' and '31.12.1997' or Position = 'Manager' and Lasted_to between '01.01.1995' and '31.12.1997'
(4) Position = 'Manager' and Started_from between '01.01.1995' and '31.12.1997' and Lasted_to between '01.01.1995' and '31.12.1997'
Какие из перечисленных функций могут использоваться для явного преобразования типов данных:
(1) NVL
(2) CONVERT
(3) TO_CHAR
(4) AVG
(5) TO_NUMBER
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Tom25.03.1981Bad discipline41011
12Alex28.09.19781215

Запрос SQL имеет вид

SELECT Person_name, NVL2 (Specialty_id, 5, 'none') Specialty FROM Persons WHERE Add_Info IS NULL

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса, при условии, что столбец Specialty_id имеет тип данных number

(1)
Person_nameSpecialty
Alex
(2)
Person_nameSpecialty
Alexnone
(3)
Person_nameSpecialty
Alex5
(4) сервер БД сгенерирует ошибку
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

Запрос предназначен для получения отчета, содержащего идентификаторы и номера квартир для всех адресов. Для адресов, для которых номер квартиры не известен, в поле Flat итогового отчета должно быть значение "none".

SELECT Address_id, ________ FROM Address

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) isnull (to_char (nvl (Flat, 'none')) Flat
(2) nvl (to_char (Flat), 'none') Flat
(3) nvl (to_char (varchar (40), Flat), 'none') Flat
(4) isnull (Flat, 'none') as Flat
(5) nvl2 (to_char (Flat), to_char (Flat), 'none') as Flat
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999820.88

Запрос имеет следующий вид:

SELECT TRUNC (nvl (Sal, 0), -1) as report FROM Recent_Jobs

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса, при условии, что столбец Sal имеет тип данных number:

(1)
report
(2)
report
820
(3)
report
821
(4)
report
820.8
(5)
report
820.9
Какие из перечисленных выражений можно использовать для получения текущей даты:
(1) select current_date
(2) select getdate() from dual
(3) select sysdate from dual
(4) select systimestamp from dual
(5) select sysdate() from dual
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Tom25.03.1981Bad discipline41011
12Alex28.09.19781215

Запрос предназначен для отображения имен соискателей, совершеннолетие которых наступило до 2000 года:

SELECT Person_name FROM Persons WHERE to_char (add_months (Day_Of_Birth, 12*18), 'year') < 2000

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину ошибки:

(1) неверное число аргументов, передаваемых в функцию to_char
(2) функции add_months не существует
(3) во втором аргументе функции to_char задан некорректный формат даты
(4) функция to_char возвращает строковое значение, которое, в данном случае, не может быть неявно преобразовано в числовое значение
Имеется модель данных: files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id ( number FK), Job_id (number, FK)

Запрос предназначен для отображения имен соискателей и соответствующих им идентификаторов специальностей (Specialty_id). Для соискателей, у которых в поле Specialty_id присутствует значение NULL, установить в качестве идентификатора специальности 13:

SELECT Person_name, ______________ FROM Persons

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) IFNULL (Specialty_id) THEN 13
(2) DECODE (Specialty_id, NULL, 13, Specialty_id) as Specialty
(3) CASE Specialty_id WHEN NULL THEN 13, ELSE Specialty_id as Specialty
(4) CASE nvl (Specialty_id, -1) WHEN -1 THEN 13 ELSE Specialty_id as Specialty
Запрос SQL имеет следующий вид: select instr ('sql the best','t', 6) report from dual

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса:

(1)
report
5
(2)
report
4
(3)
report
12
(4) сервер БД сгенерирует ошибку
(5)
report
2

Функция COUNT:

(1) используется для подсчета во всей выборке (или каждой группе строк выборки) числа значений выбранного столбца, отличных от NULL
(2) не обрабатывает строки, для которых выражение или столбец, переданные в функцию в качестве аргумента, принимают неопределенные значения
(3) используется для вычисления среднего арифметического значений выбранного столбца во всей выборке или в каждой группе строк выборки
(4) используется для вычисления математического ожидания значений выбранного столбца во всей выборке или в каждой группе строк выборки
(5) используется для подсчета во всей выборке (или каждой группе строк выборки) количества значений выбранного столбца, которые могли бы неявно быть преобразованы к числовым значениям
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999820.88
13Manager09.09.198714.12.20011020.23

Запрос имеет следующий вид:

SELECT AVERAGE (ROUND (Sal, 1)) as result FROM Recent_Jobs ORDER BY result

При попытке выполнить запрос сервер генерирует ошибку. Укажите правильную причину ошибки:

(1) неверное число аргументов передано функции ROUND
(2) функции AVERAGE не существует
(3) при использовании в групповых функциях вложенных функций запрос всегда должен включать фразу GROUP BY
(4) групповые функции не могут включать вложенные функции
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999820.88
13Salesman28.09.199903.02.2001998.09
14Analyst21.03.200223.04.2004

Запрос имеет следующий вид:

SELECT MIN (isnull (Sal, 0)) as report FROM Recent_Jobs

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
report
NULL
(2) сервер БД сгенерирует ошибку
(3)
report
0
(4)
report
820.88
(5)
report
no rows selected

Фраза GROUP BY:

(1) всегда следует последней в запросе SELECT
(2) предшествует фразе WHERE
(3) используется для задания выражений и столбцов, по которым следует осуществлять группировку
(4) является обязательной, если в запросе используются групповые функции
(5) является обязательной, если во фразе SELECT помимо групповой функции присутствует название какого-либо столбца или выражение
Имеется модель данных:files

, где таблица Recent_Jobs имеет структуру:

Recent_Jobs: Job_id (number PK), Position (varchar2 (40)), Started_from (date, NOT NULL), Lasted_to (date, NOT NULL), Employer_comments (varchar2 (200)), Sal (number)

Запрос предназначен для определения средней продолжительности работы (периода нахождения в должности) менеджеров (Position = 'Manager').

SELECT ___________ FROM Recent_Jobs ____________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) первый фрагмент: AVERAGE(round (months_between (Lasted_to, Started_from)/12)) второй фрагмент: where Position = 'Manager'
(2) первый фрагмент: AVG (months_between (Lasted_to, Started_from)/12) второй фрагмент: group by Position having Position = 'Manager'
(3) первый фрагмент: AVG (round (months_between (Lasted_to, Started_from)/12, 3)) второй фрагмент: where Position = 'Manager'
(4) первый фрагмент: AVG ((to_char (Lasted_to, 'yyyy') – to_char (Started_from 'yyyy')) второй фрагмент: group by Position where Position = 'Manager'
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999800.36
13Salesman13.11.199903.02.2001500
14Salesman14.08.199723.02.1999300
15Manager12.03.200304.09.2006800.12

Запрос SQL имеет вид:

SELECT Max (Sal) report FROM Recent_Jobs GROUP BY Position, round (Sal, 0)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
report
800.36
500
300
(2) сервер БД сгенерирует ошибку
(3)
report
800
500
(4)
report
800.4
800.1
500
300
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999800
13Salesman28.09.199903.02.2001

Запрос SQL имеет вид:

SELECT Position, STDDEV (nvl (Sal, 0)) FROM Recent_Jobs WHERE to_char (Lasted_to, 'yyyy') - to_char (Started_from, 'yyyy') >= 2 GROUP BY substr (Position, 1, 1)

При попытке выполнить запрос, сервер БД генерирует ошибку. Укажите правильную причину ошибки:

(1) фраза WHERE недопустима в запросах, в которых используется фраза GROUP BY
(2) фраза WHERE должна следовать после фразы GROUP_BY
(3) во фразе GROUP BY отсутствует столбец Position (вне выражения), который присутствует во фразе SELECT
(4) групповые функции не могут принимать однострочные функции в качестве аргументов
(5) функции STDDEV не существует

Внешнее соединение:

(1) возвращает все строки хотя бы одной таблицы, участвующей в соединении
(2) может быть только левым или правым
(3) обеспечивается применением операторов: LEFT (RIGHT, FULL) OUTER JOIN
(4) обеспечивается применением в условии WHERE оператора "(+)" (плюс в скобках)
(5) это соединение строк из нескольких таблиц, при котором используется отличная от равенства операция сравнения
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

, таблица Recent_Jobs имеет структуру:

Recent_Jobs: Job_id (number, PK), Position (varchar2 (40)), Started_from (date), Lasted_to (date), Employer_comments (varchar2 (200))

Запрос, предназначенный для отображения имен соискателей, ранее занимавших должность Manager (Position = 'Manager'), имеет вид:

SELECT Person_name FROM Persons p join Recent_Jobs r USING p.Job_id = r.Job_id and r.Position ='Manager'

В результате выполнения запроса сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки

(1) во фразе SELECT пропущен префикс в названии столбца Person_name
(2) вместо ключевого слова and, разделяющего условия во фразе USING, следовало использовать ключевое слово WHERE
(3) оператор JOIN является недопустимым оператором в данном запросе
(4) вместо ключевого слова USING следовало использовать ключевое слово ON
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

, таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30), NOT NULL), City (varchar2 (30), NOT NULL), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

Запрос SQL предназначен для отображения имен соискателей и названий городов, в которых они проживают. В отчет должны также попасть соискатели, об адресах которых ничего неизвестно (в поле Persons.Address_id отсутствует значение)

SELECT Person_name, City FROM _________________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) Persons p, Address a where p.Address_id (+) = a.Address_id
(2) Persons p, Address a where Person.Address_id = Address.Address_id (+)
(3) Persons p, Address a where p.Address_id = a.Address_id (+)
(4) Person p RIGHT OUTER JOIN Address a on p.Address_id = a.Address_id
(5) Person p LEFT OUTER JOIN Address a on p.Address_id = a.Address_id
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30), UNIQUE, NOT NULL), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK):

, таблица Person_Tel имеет структуру:

Person_Tel: Person_id (number, PK, FK), Tell_id (number, PK, FK)

Запрос SQL предназначен для отображения имен соискателей и числа соответствующих им телефонных номеров, если соискатель не обладает ни одним телефонным номером, в отчете напротив имени этого соискателя должно находиться значение 0.

SELECT p.Person_name, count (_________) as "Число телефонов" FROM Persons p _________ p.Person_id = pt.Person_id GROUP BY ______________

Какие фрагменты кода следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.

(1) первый фрагмент: Person_id; второй фрагмент: left outer join Person_Tel pt on третий фрагмент: p.Person_name
(2) первый фрагмент: Person_id; второй фрагмент: right outer join Person_Tel pt on третий фрагмент: Persons.Person_name
(3) первый фрагмент: Person_id; второй фрагмент: left outer join Person_Tel pt using третий фрагмент: Person_name
(4) первый фрагмент: Person_name; второй фрагмент: , Person_Tel pt where третий фрагмент: p.Person_name
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Lincoln25.03.1978Bad discipline41011
12Tom28.09.197851215
13Tony21.02.197751314

, таблица Age_grade содержит данные:

Grade_idLowest_ageHighest_age
11829
23070

Запрос SQL имеет вид:

SELECT Person_name, Grade_id FROM Persons JOIN Age_Grade USING trunc (months_between (sysdate, Day_Of_Birth)/12) between Lowest_age and Highest_age AND Grade_id = 2

Выберите среди предложенных вариантов верный вариант итогового отчета, при условии, что текущей датой является 27.07.2008:

(1)
Person_nameGrade_id
Lincoln2
Tom1
Tony2
(2)
Person_nameGrade_id
Lincoln2
Tom2
Tony2
(3)
Person_nameGrade_id
Lincoln2
Tony2
(4) сервер сгенерирует ошибку
Имеется модель данных:files

, где таблица Skills содержит данные:

Skill_idSkill_nameGeneral_skill
11C++ programming13
1513
13Programming
14Java programming13

Запрос SQL имеет следующий вид:

SELECT g.Skill_name as name, count (all s.Skill_name) num_of_subskills FROM Skills s, Skills g WHERE s.General_skill = g.Skill_id GROUP BY g.Skill_name

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
namenum_of_subskills
Programming1
(2)
namenum_of_subskills
Programming3
(3)
namenum_of_subskills
Programming2
(4) Сервер БД сгенерирует ошибку
Какие операторы сравнения могут применяться в условии WHERE, если в качестве правого операнда используется однострочный подзапрос:
(1) =<
(2) >=
(3) = ANY
(4) >
(5) = ALL
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30) NOT NULL), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для отображения имен всех соискателей, младших соискателя с идентификатором (Person_id), равным 7528:

SELECT Person_name, FROM Persons WHERE trunc (months_between (sysdate, Day_Of_Birth)/12)________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) < (SELECT trunc (months_between (sysdate, Day_Of_Birth)/12) FROM Persons where Person_id=7528)
(2) =< ANY (SELECT trunc (months_between (sysdate, Day_Of_Birth)/12) FROM Persons where Person_id=7528)
(3) < SELECT trunc (months_between (sysdate, Day_Of_Birth)/12) FROM Persons where Person_id=7528
(4) < "SELECT trunc (months_between (sysdate, Day_Of_Birth)/12) FROM Persons where Person_id=7528"
Имеется модель данных:files

, где таблица Skills содержит данные:

Skill_idSkill_nameGeneral_skill
11C++ programming13
15DB Design14
13Programming
14Data Bases

Запрос SQL имеет следующий вид:

SELECT r.n1 name1, r.n2 name2 From (SELECT g.Skill_name n1, s.Skill_name n2 FROM Skills s, Skills g WHERE s.General_skill = g.Skill_id) r WHERE SUBSTR (r.n1, -1) = SUBSTR (r.n2, -1)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name1name2
Data BasesDB Design
(2)
name1name2
Data BasesDB Design
ProgrammingC++ programming
(3) сервер БД сгенерирует ошибку
(4)
name1name2
ProgrammingC++ programming
(5)
name1name2
DB DesignData Bases
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_idDes_Salary
11Jorge25.03.197841011100
12Tom28.09.197851215200
13Peter31.01.198251316200

Запрос SQL имеет вид:

SELECT Person_name as "name" FROM Persons p WHERE Des_Salary > ANY SELECT Des_Salary from Persons where Specialty_id = 5

При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) выражение > ANY недопустимо в запросах SQL для Oracle
(2) подзапрос не заключен в кавычки
(3) подзапрос не заключен в скобки
(4) для всех названий столбцов в запросе должен использоваться префикс p
(5) подзапрос возвращает одну строку, тогда как оператор сравнения > ANY может применяться только для многострочных подзапросов
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

, таблица Skills имеет структуру:

Skills: Skill_id (number, PK), Skill_title (varchar2 (30))

, таблица Person_Skill имеет структуру:

Person_Skill: Person_id (number, PK, FK), Skill_id (number, PK, FK)

Запрос предназначен для отображения имен сотрудников, которые обладают навыком (Skill_title) "system administrator":

SELECT Person_name FROM Persons WHERE EXISTS (SELECT * from Person_Skill, Skills s WHERE Persons.Person_id = Person_Skill.Person_id AND Person_Skill.Skill_id = Skills.Skill_id AND Skill_title = 'system administrator' )

При выполнении данного запроса сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки.

(1) в подзапросе EXISTS не может использоваться указание на выбор всех столбцов из таблиц "*"
(2) оператора EXISTS не существует
(3) в предпоследнем условии подзапроса EXISTS вместо префикса Skills следовало использовать префикс s
(4) подзапрос EXISTS не может использоваться для соединения строк из нескольких таблиц
(5) в последнем условии подзапроса EXISTS пропущен префикс s в названии столбца Skill_title
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK), Des_Salary (number):

Запрос предназначен для отображения имени каждого соискателя, день рождения которого совпадает с днем рождения какого-либо другого соискателя (хотя бы одного).

SELECT Person_name FROM Persons p1 WHERE Day_Of_Birth __________ (select p2.Day_Of_Birth from Persons p2 where p2.Person_id <> p1.Person_id)

Укажите операторы сравнения, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) IN LIST
(2) = ANY
(3) IN LIST
(4) ANY OF
(5) IN
Имеется модель данных:files

, где таблица Address содержит данные:

Address_idCountryCityRegionStreetHouse
11RussiaSerpukhovZhukova45
12RussiaMoscowZhukova15
13RussiaSt.PetersburgZhukova45

Запрос SQL имеет вид:

SELECT City FROM Address a WHERE (Street, House) not in (SELECT Street, House FROM Address WHERE City = 'St.Petersburg') AND City <> 'St.Petersburg'

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
City
Serpukhov
(2)
City
Serpukhov
Moscow
(3)
City
Moscow
(4) сервер БД сгенерирует ошибку
(5) строки не выбраны

Оператор INTERSECT:

(1) исключает из итоговой выборки повторяющиеся строки
(2) может применяться только для построения запроса к двум и более таблицам, в котором во фразах Select порядок и свойства полей совпадают
(3) не существует
(4) является бинарным

Таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Michel25.03.1978Bad discipline41011
12Tommy15.04.197551215

Таблица Persons1 содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Dennis25.03.197841013
12James15.04.197544502

Запрос SQL имеет вид:

select length(Person_name) name from Persons union all select length(Person_name) name from Persons1

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
6
5
(2)
name
Michel
Tommy
Dennis
James
(3)
name
6
5
6
5
(4) сервер БД сгенерирует ошибку

Таблица Skills имеет структуру:

Skills: Skill_id (number PK), Skill_title (varchar2 (40)), General_skill (number)

Таблица Specialties имеет структуру:

Specialties: Specialty_id (number PK), Specialty_title (varchar2 (20))

Запрос предназначен для отображения списка наименований навыков (Skill_title), которые не совпадают с наименованиями специальностей (Specialty_title).

SELECT Skill_title title FROM Skills ________________ SELECT Specialty_title title FROM Specialties

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата

(1) INTERSECT
(2) INTERSECTION
(3) INTERSECT ALL
(4) UNION
(5) MINUS

Псевдонимы столбцов:

(1) могут передаваться в качестве аргументов функций
(2) могут использоваться во фразе ORDER BY
(3) обязательно отделяются от названий столбцов предлогом as
(4) могут заключаться в двойные кавычки
(5) могут иметь названия, совпадающие с названиями других столбцов таблицы
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (char (25)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос SQL предназначен для выборки всех дат рождения из таблицы Persons, в итоговом отчете указанный столбец должен иметь название Day of birth:

SELECT ________________ FROM Persons Из приведенных ниже вариантов кода укажите тот вариант, которым можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.
(1) Column №3 as "Day of birth"
(2) Day_Of_Birth as Day of Birth
(3) Day_Of_Birth as 'Day of Birth'
(4) Day_Of_Birth as "Day of Birth"
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted fromLasted to
30Manager12.01.200301.05.2008
20Manager14.11.200009.09.2005
10Assistant02.12.200210.05.2005
15Assistant13.09.200010.04.2007

Запрос имеет следующий вид:

SELECT Job_id, Position FROM Recent_Jobs Order BY Position asc, Job_id

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Job_idPosition
15Assistant
10Assistant
30Manager
20Manager
(2)
Job_idPosition
10Assistant
15Assistant
20Manager
30Manager
(3)
Job_idPosition
10Manager
15Manager
20Assistant
30Assistant
(4) сервер БД сгенерирует ошибку
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_Id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number NOT NULL), Flat (number NOT NULL)

Запрос SQL предназначен для подсчета среднеарифметического номера дома и номера квартиры для каждого адреса, результат должен быть отсортирован в порядке убывания среднеарифметических значений:

SELECT Address_id, ________________ FROM Address ORDER BY _____________________

Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу

(1) первый фрагмент: House + Flat/2 as "avg" второй фрагмент: "avg" desc
(2) первый фрагмент: (House/2 + Flat/2) as 'avg' второй фрагмент: 'avg' desc
(3) первый фрагмент: House/2 + Flat/2 as "avg" второй фрагмент: 2 desc
(4) первый фрагмент: (House + Flat)/2 avg второй фрагмент: (House + Flat)/2 desc
Укажите, какие из перечисленных операторов являются операторами сравнения, допустимыми в Oracle:
(1) != (не равно)
(2) IS NULL (проверка неопределенных значений)
(3) between values (в интервале)
(4) <= (меньше или равно)
(5) like
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Tom25.03.1981Bad discipline41011
12Alex28.09.197851215

Запрос SQL предназначен для выборки всех имен соискателей, которые обладают специальностью с идентификатором 15 или 11 (Job_id) и содержат дополнительные сведения в поле Add_Info:

SELECT Person_name FROM Persons WHERE (Job_id=11 OR 15) AND Add_Info IS NOT NULL

В результате запроса сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) в третьем условии слово IS (перед оператором NOT NULL) является лишним
(2) во втором условии пропущен левый операнд
(3) оператора NOT NULL не существует, вместо него следовало использовать оператор "<>".
(4) некорректное использование скобок в выражении условия
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoPositive_responsesAddress_id
11Tom25.03.1981Bad discipline6010
12Alex28.09.197890%12

Запрос предназначен для получения отчета, содержащего информацию о соискателях, количество положительных отзывов которых указано в процентах от общего числа отзывов (значение в столбце Positive_responses заканчивается знаком %). Столбец Positive_responses имеет тип VARCHAR2.

SELECT Person_name FROM Persons WHERE __________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) Positive_responses LIKE '%ESCAPE%'
(2) Positive_responses LIKE '%!%' ESCAPE '!'
(3) Positive_responses LIKE ' %"%" '
(4) Positive_responses LIKE "%[%]"
Положим условия: у1, у2, у3 являются истинными, а условия x1, x2, x3 – ложными.

Какие из перечисленных комплексных условий во фразе WHERE будут истинными:

(1) y2 and x2 or x1 or x3
(2) у1 and x1 or у2 and x2 or у3 and x3
(3) y1 and (x1 or y2)
(4) у1 and (x1 or у2) and (x2 or у3) or x3
Имеется модель данных:files

, где таблица Address имеет структуру:

Address: Address_Id (number, PK), Country (varchar2 (30)), City (varchar2 (30)), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

Запрос предназначен для получения идентификаторов Московских адресов (City = 'Moscow') со значением «Serpukhovskaya» в столбце Street и Серпуховских адресов (City = 'Serpukhov') со значением «Moscovskaya» в столбце Street:

SELECT Address_id From Address WHERE___________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) City in ('Moscow', 'Serpukhov') and Street in ('Moscovskaya', 'Serpukhovskaya')
(2) (City = 'Moscow' and Street = 'Serpukhovskaya') and (City = 'Serpukhov' and Street = 'Moscovskaya')
(3) (City = 'Moscow' or City = 'Serpukhov') and (Street = 'Serpukhovskaya' or Street = 'Moscovskaya')
(4) (City = 'Moscow' and Street = 'Serpukhovskaya') or (City = 'Serpukhov' and Street = 'Moscovskaya')
Какие из перечисленных функций могут использоваться для преобразования неопределенных значений в заданные значения:
(1) NULLTO
(2) NVL
(3) ISNULL
(4) CONVERT
(5) NVL2
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
11Manager25.03.198112.12.198110000
12Programmer28.09.197812000

Запрос предназначен для получения отчета, содержащего информацию о местах работы, где соискатели были приняты и уволены в один и тот же год, при условии, что форматом даты по умолчанию является формат "dd.mm.yyyy".

SELECT Job_id, Position FROM Recent_Jobs WHERE __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) substr (Started_from, 7, 4) = substr (Lasted_to, 7, 4)
(2) convert(number,substr (Started_from)) = convert(number,substr (Lasted_to))
(3) to_number (Started_from, 7,4) = to_number (Lasted_to, 7, 4)
(4) to_number (Started_from, 'yyyy') = to_number (Lasted_to, 'yyyy')
(5) to_char (Started_from, 'yyyy') = to_char (Lasted_to, 'yyyy')
Запрос SQL имеет вид: SELECT REPLACE (LOWER ('Alex'), 'a', 'F') report FROM dual

Среди представленных вариантов выберите корректный вариант итогового отчета:

(1)
report
FLEX
(2)
report
flex
(3)
report
alex
(4) сервер сгенерирует ошибку
(5)
report
Flex
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для получения отчета, состоящего из одного столбца, в котором содержится имя соискателя (Person_name) и первые 20 букв из поля Add_Info, разделенные пробелом.

SELECT _________ FROM Persons

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) Person_name + " " + substr (Add_Info, 1, 20)
(2) Person_name + ' ' + substring (Add_Info, 1, 20)
(3) Person_name || ' ' || substr (Add_Info, 1, 20)
(4) Concat (Person_name, concat (' ', substr (Add_Info, 1, 20)))
(5) Person_name || " " || substr (Add_Info, 20, 1)
Какие из перечисленных выражений можно использовать для получения имени текущего пользователя БД (пользователя сеанса):
(1) select current_user
(2) select user
(3) select user from dual
(4) select session_user from dual
(5) select SYS_CONTEXT ('USERENV', 'SESSION_USER') from dual
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для отображения имен соискателей и дат их рождения в формате: "год, квартал".

SELECT Person_name, _____________________ FROM Persons

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) DATEPART (Day_Of_Birth, 'yyyy, quarter')
(2) TO_CHAR (Day_Of_Birth, 'yyyy, q')
(3) TO_CHAR (Day_Of_Birth, 'yyyy ", " q')
(4) YEAR (Day_Of_Birth) || ', ' || QUARTER (Day_Of_Birth)
Какое из перечисленных выражений можно использовать для получения даты, соответствующей ближайшей Пятнице к текущей дате. Полагать, что для базы данных заданы русские языковые настройки: alter session set nls_territory = 'russia'.
(1) select case to_char (sysdate, 'd') when '1' then sysdate+4 when '2' then sysdate+3 when '3' then sysdate+2 when '4' then sysdate+1 when '5' then sysdate when '6' then sysdate +6 when '7' then sysdate+5 end as report from dual
(2) select NEXTDATE(sysdate, 'FRIDAY') from dual
(3) select NEXT_DATE ('FRIDAY') from dual
(4) select NEXT_DAY (sysdate, 'FRIDAY') from dual
Запрос SQL имеет следующий вид: SELECT round (45.866, -2) as report from dual

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса:

(1)
report
50
(2)
report
46
(3)
report
45.9
(4)
report
0
(5)
report
45.87

Групповые функции:

(1) возвращают отдельные значения для каждой обрабатываемой строки
(2) Возвращают одно значение для каждой группы строк или всех строк, обрабатываемых по запросу
(3) возвращают значение NULL, если переданное в качестве аргумента выражение или столбец, принимает для одной из строк, обрабатываемых функцией, неопределенное значение
(4) не обрабатывают строки, для которых выражение или столбец, переданные в функцию в качестве аргумента, принимают неопределенные значения
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для получения среднего возраста соискателей (в годах).

SELECT _______________ FROM Persons

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) AVG (to_char (sysdate, 'yyyy') – to_char (Day_Of_Birth, 'yyyy'))
(2) AVERAGE (to_char (sysdate, 'yyyy') – to_char (Day_Of_Birth, 'yyyy'))
(3) AVG (trunc (months_between (sysdate, Day_Of_Birth)/ 12))
(4) NORMAL (trunc (months_between (sysdate, Day_Of_Birth)/12))
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999800
13Salesman28.09.199903.02.2001900
14Manager13.10.200304.02.20041300

Запрос имеет следующий вид:

select AVG (distinct trunc (Sal, -3)) as report FROM Recent_Jobs

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
report
1000
(2) сервер БД сгенерирует ошибку
(3)
report
500
(4)
report
650
Выберите среди предложенных ниже вариантов те, которые отражают корректный порядок следования различных фраз в запросе на выборку данных
(1) WHERE ORDER BY GROUP BY
(2) WHERE GROUP BY HAVING
(3) WHERE GROUP BY ORDER BY
(4) GROUP BY WHERE ORDER BY
Имеется модель данных:files

, где таблица Recent_Jobs имеет структуру:

Recent_Jobs: Job_id (number PK), Position (varchar2 (40)), Started_from (date), Lasted_to (date), Employer_comments (varchar2 (200)), Sal (number)

Запрос имеет следующий вид:

SELECT AVG (Sal) FROM Recent_Jobs WHERE AVG (Sal) > 1000 GROUP BY Job_id

При попытке выполнить запрос сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) во фразе GROUP BY не может присутствовать столбец, которого нет в списке столбцов (выражений) фразы SELECT
(2) во фразе WHERE не могут использоваться групповые функции (если не принимать во внимание подзапросы)
(3) фраза WHERE должна стоять после фразы GROUP BY, обратный порядок не допускается
(4) вместо GROUP BY следовало использовать ключевое слово GROUP
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date NOT NULL), Add_Info (varchar2 (30)), Specialty_id (number), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для получения среднеквадратических отклонений возрастов соискателей по специальностям с идентификаторами 10 и 20. Для соискателей, не имеющих значения в поле Specialty_id полагать Specialty_id = 10.

SELECT _______________ FROM Persons _______________________

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата

(1) первый фрагмент: Specialty_id, STDDEV (trunc (months_between (sysdate, Day_Of_Birth)/12)) второй фрагмент: having Specialty_id in (10, 20) group by Specialty_id
(2) первый фрагмент: Specialty_id, DEVIATE (trunc (months_between (sysdate, Day_Of_Birth)/12)) второй фрагмент: having Specialty_id in (10, 20) group by Specialty_id
(3) первый фрагмент: Specialty_id, STDDEV (trunc (months_between (sysdate, Day_Of_Birth)/12)) второй фрагмент: group by Specialty_id having nvl (Specialty_id, 10) in (10, 20)
(4) первый фрагмент: nvl (Specialty_id, 10), STDDEV (trunc (months_between (sysdate, Day_Of_Birth)/12)) второй фрагмент: group by nvl (Specialty_id, 10) having nvl (Specialty_id, 10) in (10, 20)
(5) первый фрагмент: nvl (Specialty_id, 10), STDDEV (trunc (months_between (sysdate, Day_Of_Birth)/12)) второй фрагмент: where nvl (Specialty_id, 10) in (10, 20) group by nvl (Specialty_id, 10)
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999700
13Salesman13.11.199903.02.2001500
14Salesman14.08.199723.02.1999300
15Manager12.03.200304.09.2006800
Запрос имеет следующий вид: SELECT AVG (MAX (Sal)) as report FROM Recent_Jobs GROUP BY Position

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
report
650
(2) сервер БД сгенерирует ошибку
(3)
report
800
500
(4)
report
750
400

Эквисоединение:

(1) соединение строк из нескольких таблиц, основанное на совпадении всех пар значений в одноименных столбцах
(2) это соединение строк из нескольких таблиц, обладающих одинаковой структурой (схемой)
(3) может выполняться только на основе ключевых полей исходных таблиц
(4) соединяет и добавляет в выборку строки, которые в соответствующих полях (по которым ведется соединение), содержат значение NULL
(5) соединение строк из нескольких таблиц, основанное на совпадении значений в заданных столбцах
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

, таблица Address имеет структуру:

Address: Address_id (number, PK), Country (varchar2 (30) NOT NULL), City (varchar2 (30) NOT NULL), Region (varchar2 (30)), Street (varchar2 (30)), House (number), Flat (number)

Запрос SQL имеет вид:

SELECT Person_name, a.City FROM Persons p JOIN Address a ON Address_id = a.Address_id

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) оператор JOIN не может использоваться для организации эквисоединений
(2) во фразе ON пропущен префикс в названии столбца
(3) во фразе SELECT пропущен префикс в названии столбца Person_name
(4) вместо ключевого слова ON следовало использовать ключевое слово USING
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40) UNIQUE, NOT NULL), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK)

, таблица Skills имеет структуру:

Skills: Skill_id (number, PK), Skill_title (varchar2 (100))

, таблица Person_Skill имеет структуру:

Person_Skill: Person_id (number, PK, FK), Skill_id (number, PK, FK)

Запрос SQL предназначен для отображения имен соискателей, обладающих не менее пятью навыками.

SELECT Person_name from Persons JOIN Person_Skill __ Persons.Person_id = Person_Skill.Person_id JOIN Skills __ Skills.Skill_id = Person_Skill.Skill_id ___________________________________

Выберите из предложенных вариантов тот, который при подстановке вместо знаков подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) первый и второй фрагмент: ON третий фрагмент: group by Person_id having Count (Skills.Skill_id) >= 5
(2) первый и второй фрагмент: USING третий фрагмент: group by Persons.Person_id having Count (Skills.Skill_id) >= 5
(3) первый и второй фрагмент: USING третий фрагмент: where Count (Skills.Skill_id) >= 5 group by Person_name
(4) первый и второй фрагмент: ON третий фрагмент: group by Person_name having Count (Skills.Skill_id) >= 5

Таблица Age_grade имеет структуру:

Age_grade: Grade_id (number PK), Lowest_age (number), Highest_age (number)

Таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос SQL предназначен для отображения имен соискателей, которые попадают в третью возрастную категорию (Grade_id = 3).

SELECT Person_name FROM Persons p ____________________________________________

Какие фрагменты кода можно вставить вместо знака подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.

(1) join Age_grade a using trunc (months_between (sysdate, Day_Of_Birth)/12) between a.Lowest_age and a.Highest_age where a.Grade_id = 3
(2) , Age_grade a where trunc (months_between (sysdate, Day_Of_Birth)/12) between a.Lowest_age and a.Highest_age and a.Grade_id = 3
(3) join Age_grade a on trunc (months_between (sysdate, Day_Of_Birth)/12) between a.Lowest_age and a.Highest_age and a.Grade_id = 3
(4) external join Age_grade a on trunc (months_between (sysdate, Day_Of_Birth)/12) between a.Lowest_age and a.Highest_age and a.Grade_id = 3
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Ron25.03.1981410
12Alex28.09.197851215

, таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999700
15Salesman13.11.199903.02.2001500

Запрос SQL имеет вид:

SELECT Person_name, Job_id FROM Persons FULL OUTER JOIN Recent_Jobs ON Persons.Job_id = Recent_Jobs.Job_id

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Person_nameJob_id
Ron
Alex15
12
(2)
Person_nameJob_id
Alex15
(3)
Person_nameJob_id
Alex15
12
(4) сервер сгенерирует ошибку
(5)
Person_nameJob_id
12
Имеется модель данных:files

, где таблица Skills содержит данные:

Skill_idSkill_nameGeneral_skill
11Data Bases Systems
15DB Design11
13Programming
14Java programming13

Запрос SQL имеет следующий вид:

SELECT g.Skill_name name FROM Skills s, Skills g WHERE s.General_skill = g.Skill_id GROUP BY g.Skill_id HAVING AVG (length (s.Skill_name)) < length (g.Skill_name)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
DB Design
(2)
name
Data Bases Systems
(3) сервер БД сгенерирует ошибку
(4)
name
Programming
(5)
name
Data Bases Systems
Programming
Какие операторы сравнения могут применяться в условии WHERE, если в качестве правого операнда используется многострочный подзапрос:
(1) <>
(2) IN
(3) <
(4) IN LIST
(5) > ALL
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2 (30)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number, FK), Job_id (number, FK), Des_Salary (number):

Запрос предназначен для отображения соискателей с ожидаемой зарплатой (Des_Salary), равной минимальной ожидаемой зарплате среди всех соискателей.

SELECT Person_name FROM Persons WHERE Des_Salary________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) = MIN (Des_Salary)
(2) = (SELECT MIN (Des_Salary) from Persons)
(3) = SELECT MIN (Des_Salary) from Persons
(4) = 'SELECT MIN (Des_Salary) from Persons'
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_idDes_Salary
12Tom28.09.197851215200
13Peter31.01.198251316200

, таблица Age_grade содержит данные:

Grade_idLowest_ageHighest_age
11829
23050

Запрос SQL имеет следующий вид:

SELECT r.n1 name1 From (SELECT Person_name n1, Grade_id n2 FROM Persons, Age_grade WHERE trunc (months_between (sysdate, Day_Of_Birth)/12) between Lowest_age and Highest_age) r WHERE r.n2=2

Выберите среди предложенных вариантов верный вариант итогового отчета при условии, что текущей, является дата 06.10.2008:

(1)
name1
Tom
Peter
(2)
name1
Tom
(3)
name1
2
(4) сервер БД сгенерирует ошибку
(5) строки не выбраны
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_idDes_Salary
11Jorge25.03.197841011800
12Tom28.09.197851215200

Запрос SQL имеет вид:

SELECT Person_name as "name" FROM Persons p WHERE Des_Salary > ANY (SELECT * from Persons where Person_id = 12)

При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) выражение > ANY является недопустимым в запросе SQL для Oracle
(2) подзапрос возвращает одну строку, тогда как оператор сравнения > ANY может применяться только для многострочных подзапросов
(3) подзапрос не должен заключаться в скобки
(4) подзапрос является многостолбцовым, хотя в данном случае он должен возвращать значение только одного столбца
Имеется модель данных:files

, где таблица Persons имеет структуру:

Persons: Person_id (number, PK), Person_name (varchar2(40)), Day_Of_Birth (date), Add_Info (varchar2 (30)), Specialty_id (number, FK), Address_Id (number FK), Job_id (number, FK)

Запрос предназначен для отображения номеров специальностей, число соискателей по которым превышает число соискателей по специальностям 13 и 12.

SELECT Specialty_id FROM Persons GROUP BY Specialty_id HAVING count (Person_id) __________ (select Count (Person_id) from Persons group by Specialty_id having Specialty_id in (13, 12))

Укажите операторы сравнения, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) > ALL IN LIST
(2) >
(3) > ANY
(4) > ALL
Имеется модель данных:files

, где таблица Persons содержит данные:

Person_idPerson_nameDay_Of_BirthAdd_InfoSpecialty_idAddress_idJob_id
11Ron25.03.1978410
12Alex28.09.197851215
13Tom01.02.1982412

, таблица Address содержит данные:

Address_idCountryCityRegionStreetHouse
11RussiaMoscowZhukova45
12RussiaMoscowMoscow regionLenina

Запрос SQL имеет вид:

SELECT Person_name name FROM Persons p WHERE NOT EXISTS (SELECT * FROM Address a WHERE p.Address_id = a.Address_id and a.Address_id = 12)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
Ron
(2)
name
Alex
Tom
(3)
name
Ron
Alex
Tom
(4) сервер БД сгенерирует ошибку
(5) строки не выбраны
Имеется модель данных:files

, где таблица Recent_Jobs содержит данные:

Job_idPositionStarted_fromLasted_toEmp_commentsSal
12Manager28.09.198812.09.1999400
13Salesman15.09.198814.12.1999650
14Manager13.09.198810.09.1999600

Запрос SQL имеет вид:

SELECT Job_id FROM Recent_Jobs WHERE (to_char (Started_from, 'yyyy'), to_char (Lasted_to, 'yyyy')) in (SELECT to_char (Started_from, 'yyyy'), to_char (Lasted_to, 'yyyy') FROM Recent_Jobs WHERE Position = 'Manager') AND Sal > any (select Sal from Recent_Jobs where Position = 'Manager')

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) сервер БД сгенерирует ошибку
(2) строки не выбраны
(3)
Job_id
13
(4)
Job_id
14
(5)
Job_id
13
14

Оператор MINUS:

(1) используется для получения пересечения результатов выборки операторов SELECT
(2) не существует
(3) используется для получения разности результатов выборки операторов SELECT
(4) используется для соединения строк из нескольких таблиц
(5) может применяться только для построения запроса к двум и более таблицам, в котором во фразах Select порядок и свойства полей совпадают

Таблица Address содержит данные:

Address_idCountryCityRegionStreetHouse
11RussiaMoscowMoscow regionZhukova45
12RussiaIvanteevkaPushkinsky regionGagarina
13RussiaTeikovoIvanovsky regionGagarina
14RussiaMoscowMoscow regionLenina

Запрос SQL имеет вид:

select City name from Address ad where exists (select * from Address a where substr (a.Region, 1,1)=substr (ad.City, 1,1)) union select Region name from Address ad where exists (select * from Address a where substr (ad.Region,1,1)=substr(a.City, 1,1))

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
Moscow
Moscow region
(2) сервер БД сгенерирует ошибку
(3)
name
Moscow
Moscow
Moscow region
Moscow region
(4)
name
Moscow
Ivanteevka
Moscow region
Ivanovsky region

Таблица Skills имеет структуру:

Skills: Skill_id (number PK), Skill_title (varchar2), General_skill (number)

Таблица Specialties имеет структуру:

Specialties: Specialty_id (number PK), Specialty_title (varchar2)

Запрос предназначен для отображения общего списка наименований навыков и специальностей (без повторяющихся наименований)

SELECT Skill_title title FROM Skills ________________ SELECT Specialty_title title FROM Specialties

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата

(1) UNION DISTINCT
(2) UNION
(3) AND
(4) UNION ALL
После ключевого слова SELECT могут следовать:
(1) выражения с логическими операторами AND или OR
(2) условия отбора строк
(3) арифметические выражения
(4) названия и псевдонимы столбцов
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing110010
12FlowersBilly Press900220

Запрос предназначен для отображения названий и общей стоимости экземпляров (Price*Quantity) всех книг:

SELECT Title, Price*Quantity total_price ORDER BY Title

В результате выполнения запроса сервер БД генерирует ошибку.

Выберите из предложенных вариантов тот, который правильно объясняет возникновение ошибки:

(1) в арифметических выражениях не допускается использование неопределенных значений, в данном же примере значение в поле Quantity принимает для одной из записей значение NULL
(2) перед псевдонимом total_price пропущен обязательный предлог AS
(3) псевдоним total_price не заключен в двойные кавычки
(4) лишним является предлог BY во фразе ORDER
(5) пропущена фраза FROM
Имеется модель данных:files

, где таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2(20)), Day_Of_Birth (date), Comments (varchar2(100)), Address (varchar2(300)), Mobile_phone (varchar2(20))

Запрос предназначен для получения отчета, состоящего из ОДНОГО столбца, который содержит информацию о читателе и дате его рождения

SELECT __________ FROM Readers

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата

(1) (Name || ' was borne ' || Day_Of_Birth) as "report"
(2) Name, Day_Of_Birth
(3) combine (Name, "was borne", Day_Of_Birth)
(4) Name + ' was borne ' + Day_Of_Birth
(5) Name || Day_Of_Birth report
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press900220

Запрос SQL имеет вид

SELECT Price*Quantity as total_price FROM Books ORDER BY Book_id

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
total_price
40
(2)
total_price
40
(3)
total_price
1
40
(4)
Price*Quantity
40
(5) cервер БД сгенерирует ошибку
Укажите, какие из перечисленных утверждений являются истинными:

Оператор like:

(1) может использоваться для сравнения строк в условии WHERE
(2) позволяет указать индекс начала и длину фрагмента, в котором производится сравнение
(3) используется для поиска строковых значений по шаблону с метасимволами "%" и "_"
(4) может применяться для поиска значений в числовых столбцах
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press9003020
13Stupid foxStreet Publishing7855050
14King of the towerBilly Press32004030

Запрос имеет следующий вид:

SELECT Title FROM Books WHERE (Price*Quantity)>1200 AND Publishing=’Billy Press’ OR (Price*Quantity)<=1200 AND Publishing like ’%S%’

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Title
Turtle
(2)
Title
Turtle
Flowers
King of the tower
(3)
Title
Flowers
King of the tower
(4) ни одна из строк не будет отобрана
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeInitial_PriceNew_Price
11TurtleStreet Publishing11004035
12FlowersBilly Press9002080%
13Stupid foxStreet Publishing7855040

Запрос предназначен для получения отчета, содержащего информацию о книгах, новая цена которых (после переоценки) указана в процентах от начальной стоимости (значение в столбце New_Price заканчивается знаком %). Столбец New_Price имеет тип VARCHAR2.

SELECT Title FROM Books Where __________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) New_Price = '%!%' ESCAPE '!'
(2) New_Price LIKE '%ESCAPE%'
(3) New_Price LIKE '%!%' ESCAPE '!'
(4) New_Price LIKE ' %"%" '
(5) New_Price LIKE "%!%" ESCAPE "!"
Выберите из представленного списка все операторы, которые не могут применяться для сравнения числовых значений в Oracle:
(1) in list (в списке)
(2) <>(не равно)
(3) between and (в интервале)
(4) LIKE
(5) все перечисленные операторы МОГУТ использоваться для сравнения числовых значений
Имеется модель данных:files

, где таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2(20)), Day_Of_Birth (date), Comments (varchar2(100)), Address (varchar2(300)), Mobile_phone (varchar2(20))

Запрос предназначен для получения имен читателей, которые родились до 1980 года и проживающих в Москве (в поле адрес встречается слово "Moscow"), а также имен читателей, у которых в поле Comments имеются комментарии.

SELECT Name FROM Readers WHERE __________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) Day_Of_Birth <= "31.12.1979" and (Address like "%Moscow%" or Comments IS NOT NULL)
(2) Day_Of_Birth <= '31.12.1979' and Address like '%Moscow%' and Comments IS NOT NULL
(3) (Day_Of_Birth <= '31.12.1979' and Address like '%Moscow%') or Comments IS NOT NULL
(4) (Day_Of_Birth <= '31.12.1979' and Address like '%Moscow%') or Comments NOT NULL
Какие из перечисленных функций не являются математическими:
(1) LOWER
(2) ROUND
(3) TRUNC
(4) SQRT
(5) TO_NUMBER
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number, NOT NULL)

Запрос предназначен для получения отчета, содержащего информацию о книгах, общая стоимость экземпляров которых превышает 1500. Предполагается, если в поле Quantity отсутствует значение, книга представлена в единственном экземпляре

SELECT Title FROM Books WHERE __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) Quantity * Price > 1500
(2) if_null (Quantity, 1) * Price > 1500
(3) nvl (Quantity, 1) * Price > 1500
(4) nvl (Quantity*Price, Price) > 1500
(5) nvl2 (Quantity, Quantity, 1) * Price > 1500
Запрос SQL имеет вид: select round(to_char(sysdate, 'yyyy'),-3) report from dual

Среди представленных вариантов выберите корректный вариант итогового отчета, если текущая дата – 09.09.2008:

(1)
report
2008
(2)
report
2000
(3)
report
2010
(4)
report
0
(5) сервер БД сгенерирует сообщение об ошибке
Имеется модель данных:files

, где таблица Authors содержит данные:

Author_idNameDay_Of_BirthAddress
10Alex11.03.1978Moscow, Sokolova, 15
20Dennis12.09.1964Moscow, Dubovina, 34

Столбец Address обладает типом varchar2 (100).

SELECT substring (Address, 3) FROM Authors

Какой результат будет получен в результате выполнения запроса?

(1) будет сформирован отчет, содержащий первые три символа адреса авторов
(2) возникнет ошибка из-за отсутствия всех необходимых аргументов функции substring
(3) будет сформирован отчет, содержащий адреса авторов без первых три символов
(4) возникнет ошибка из-за отсутствия функции substring
(5) возникнет ошибка из-за того что длина поля Address (100) превышает заданные 3 символа
Текущая дата: 1 сентября 2008 г. Запрос имеет следующий вид: select ltrim (to_char (sysdate, 'year'), 3) as report from dual;

Среди представленных вариантов выберите корректный вариант итогового отчета, если для БД выбраны американские языковые настройки:

(1)
report
thousand eight
(2)
report
two thousand eight
(3)
report
two thousand ei
(4)
report
09.2008
(5) сервер сгенерирует ошибку
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number, NOT NULL)

Запрос предназначен для получения отчета, содержащего для каждой книги наименование и примерную стоимость всех экземпляров, округленную до десятков. Предполагается, если в поле Quantity отсутствует значение, книга представлена в единственном экземпляре.

SELECT Title, ___________ FROM Books

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) round (nvl (Quantity, 1) * Price, -2)
(2) rnd (nvl (Quantity, 1) * Price, -1)
(3) round (nvl (Quantity * Price, Price), -1)
(4) round (nvl2 (Quantity, 1) * Price, 1)
(5) round (nvl (Quantity, 1) * Price, 2)
Какие из представленных выражений могут использоваться для получения текущего годового квартала, если форматом даты по умолчанию является формат 'dd.mm.yy':
(1) select to_char (sysdate, 'q') from dual
(2) select if (to_char (sysdate(), 'mm') in (1,2,3)) then 1 elseif (month(sysdate()) in (4,5,6)) then 2 elseif (month(sysdate()) in (7,8,9)) then 3 elseif (month(sysdate()) in (10,11,12)) then 4 end as quarter
(3) select if (month(getdate()) in (1,2,3)) then 1 if (month(getdate()) in (4,5,6)) then 2 if (month(getdate()) in (7,8,9)) then 3 if (month(getdate()) in (10,11,12)) then 4 end as quarter
(4) select case substr(sysdate, 4, 2) when '01' then 1 when '02' then 1 when '03' then 1 when '04' then 2 when '05' then 2 when '06' then 2 when '07' then 3 when '08' then 3 when '09' then 3 when '10' then 4 when '11' then 4 when '12' then 4 end as quarter from dual
Имеется модель данных:files

, где таблица Authors содержит данные:

Author_idNameDay_Of_BirthAddress
10Alex11.03.1978Moscow, Sokolova, 15
20ALEX12.09.1964Moscow, Dubovina, 34

Запрос SQL имеет следующий вид:

Select Name from Authors Where upper (Name) like 'ALEX'

Среди представленных вариантов выберите корректный вариант итогового отчета:

(1)
Name
ALEX
(2)
Name
Alex
ALEX
(3) no rows selected
(4) сервер сгенерирует ошибку
Какие из перечисленных функций не являются групповыми:
(1) VARIANCE
(2) NVL2
(3) COUNT
(4) LEAST
(5) SIN
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number, NOT NULL)

Запрос предназначен для определения разницы самой дорогой и самой дешевой книги издательства "New York Press" (Publishing = 'New York Press')

SELECT _______________ FROM Books _____________________

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата

(1) первый фрагмент: Max (Price) – Min (Price) второй фрагмент: GROUP Publishing = 'New York Press'
(2) первый фрагмент: MAX_DIFF (Price) второй фрагмент: WHERE Publishing = 'New York Press'
(3) первый фрагмент: Max (Price) – Min (Price) второй фрагмент: WHERE Publishing = 'New York Press'
(4) первый фрагмент: SUBSTRACT (Max (Price) – Min (Price)) второй фрагмент: WHERE Publishing = 'New York Press'
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeInitial_PriceNew_Price
11TurtleStreet Publishing11004035
12FlowersBilly Press90080%
13Stupid foxStreet Publishing785040

Запрос имеет следующий вид:

SELECT COUNT (distinct nvl (Initial_Price, 0)) report FROM Books

Выберите среди предложенных вариантов верный вариант итогового отчета, при условии, что столбец Initial_Price имеет тип данных number:

(1) сервер БД сгенерирует ошибку
(2)
report
2
(3)
report
1
(4)
report
3
Выберите среди предложенных ниже вариантов те, которые отражают корректный порядок следования различных фраз в запросе на выборку данных:
(1) HAVING GROUP BY WHERE
(2) GROUP BY HAVING ORDER BY
(3) ORDER BY GROUP BY HAVING
(4) WHERE GROUP BY ORDER BY
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number, NOT NULL)

Запрос предназначен для отображения информации о средней стоимости книг (Price) издательства "Triumph", число оставшихся экземпляров которых не менее 2:

SELECT Title, AVG (Price) FROM Books GROUP BY Publishing HAVING Publishing = 'Triumph' and Quantity >= 2

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке.

Укажите правильную причину возникновения ошибки.

(1) если в запросе присутствует фраза group by, то в списке выражений фразы SELECT могут присутствовать только групповые функции, но не названия отдельных столбцов
(2) во фразе HAVING не может быть составных условий
(3) во фразе HAVING присутствует столбец, по которому не осуществляется группировка и который не передается в качестве аргумента в групповую функцию
(4) неверный порядок следования фраз having и group by
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number, NOT NULL)

Запрос предназначен для получения распределения книг по объему (число книг до 100 страниц, число книг от 100 до 200 страниц, и т.д.) в издательствах "Triumph" и "Golden Ring". Упорядочивание строк и столбцов значения не имеет.

SELECT Publishing, trunc (Size, -2) as "size group", COUNT (Book_id) FROM Books ___________ ___________

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата

(1) первый фрагмент: where Publishing in ('Triumph', 'Golden Ring') второй фрагмент: group by Publishing, trunc (Size, -2)
(2) первый фрагмент: group by Publishing, trunc (Size, -2) второй фрагмент: having Publishing in ('Triumph', 'Golden Ring')
(3) первый фрагмент: group by Publishing, trunc (Size, -2) второй фрагмент: where Publishing in ('Triumph', 'Golden Ring')
(4) первый фрагмент: group Publishing, trunc (Size, -2) второй фрагмент: having Publishing = 'Triumph' or Publishing = 'Golden Ring'
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press9003020
13Stupid foxStreet Publishing7855050
14King of the towerStreet Publishing32004030

Запрос имеет следующий вид:

SELECT MIN (nvl (Price, 0)) report FROM Books GROUP BY Publishing HAVING Publishing like 'Street%' AND AVG (Price) > 40

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) строки не выбраны
(2)
report
30
(3) сервер БД сгенерирует ошибку
(4)
report
0

Не-эквисоединение:

(1) есть выборка строк из нескольких исходных таблиц, основанная на сравнении значений в заданных столбцах исходных таблиц, где в качестве операции сравнения может использоваться BETWEEN...AND
(2) может применяться ТОЛЬКО в том случае, если в связываемых таблицах отсутствуют пары одинаковых по наименованиям и типам столбцов
(3) это соединение строк из нескольких таблиц, обладающих разной структурой (схемой)
(4) может выполняться только на основе ключевых полей исходных таблиц
(5) соединение строк из нескольких таблиц, основанное на сравнении значений в заданных столбцах исходных таблиц, где в качестве операции сравнения не используется "=".
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

, таблица Authors имеет структуру:

Authors: Author_id (number, PK), Name (varchar2 (40)), Day_Of_Birth (date), Address (varchar2 (500))

, таблица Book_Auth имеет структуру:

Book_Auth: Book_id (number, FK), Auth_id (number, FK)

Запрос SQL имеет вид:

SELECT Title, Authors.Name FROM Books b JOIN Book_Auth ba ON b.Book_id = ba.Book_id JOIN Authors a ON ba.Auth_id = a.Author_id

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) оператор JOIN может использоваться только для соединения строк из двух таблиц, для соединения же строк из трех и более таблиц следует использовать оператор WHERE
(2) во фразе SELECT пропущен префикс в названии столбца Title
(3) во фразе SELECT вместо полного названия таблицы Authors в префиксе названия столбца Name следовало использовать псевдоним таблицы, заданный во фразе JOIN
(4) логические выражения, на основе которых осуществляется эквисоединение, не заключены в скобки
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

, таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2 (300)), Mobile_phone (varchar2 (20))

, таблица Reader_Book имеет структуру:

Reader_Book: Reader_id (number, PK, FK), Book_id (number, PK, FK), Quantity (number)

Запрос SQL предназначен для отображения идентификаторов читателей, у которых «на руках» более 10 различных книг (имеется в виду число наименований, но не число экземпляров).

SELECT Reader_id from Readers JOIN Reader_Book __ Readers.Reader_id = Reader_Book.Reader_id JOIN Books __ Books.Book_id = Reader_Book.Book_id ___________________________________

Выберите из предложенных вариантов тот, который при подстановке вместо знаков подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) первый и второй фрагмент: ON третий фрагмент: and Reader_Book.Quantity >= 10
(2) первый и второй фрагмент: ON третий фрагмент: group by Reader_id having Count (Books.Book_id) > 10
(3) первый и второй фрагмент: USING третий фрагмент: group by Name where Count (Books.Book_id) > 10
(4) первый и второй фрагмент: ON третий фрагмент: where Count (Books.Book_id) > 10 group by Reader_id
Имеется модель данных:files

, где таблица Price_grade (ценовые категории) имеет структуру:

Price_grade: Grade_id (number, PK), Lowest_price (number), Highest_price (number)

, таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

Запрос SQL предназначен для отображения наименований книг, цена которых относится ко второй ценовой категории (Price_Grade.Grade_id).

SELECT Title FROM Books b ____________________________________________

Какие фрагменты кода следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.

(1) join Price_grade g on b.Price between g.Lowest_price and g.Highest_price and g.Grade_id = 2
(2) join Price_grade g where b.Price between g.Lowest_price and g.Highest_price and g.Grade_id = 2
(3) , Price_grade g where (b.Price >= g.Lowest_price and b.Price <= g.Highest_price) and g.Grade_id = 2
(4) join Price_grade g on b.Price >= g.Lowest_price or b.Price <= g.Highest_price and g.Grade_id = 2

Таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11TurtleStreet Publishing1100110
12FlowersBilly Press9003020

Таблица Exchange_System (абонемент) содержит данные:

Group_idGroup_titleAdd_info
10Educational
20Scientific

Запрос SQL имеет вид:

SELECT Title, e.Group_id Group FROM Books b FULL OUTER JOIN Exchange_System e ON b.Group_id = e.Group_id

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
TitleGroup
Turtle10
Flowers
(2)
TitleGroup
Turtle10
Flowers
20
(3)
TitleGroup
Turtle10ed
(4) сервер сгенерирует ошибку
Имеется модель данных:files

, где таблица Books включает информацию о книгах, некоторые из которых могут одновременно выступать в качестве отдельных изданий и включаться в сборники (Collection), и содержит данные:

Book_idTitlePublishingSizeQuantityPriceCollection
11TigersStreet Publishing300130013
12FlowersBilly Press20045014
13AnimalsStreet Publishing3000240
14PlantsBilly Press11001780

Запрос SQL имеет следующий вид:

SELECT b.Title book, c.Title collection FROM Books c, Books b WHERE b.Collection = c.Book_id AND b.Quantity is NULL AND c.Quantity is NOT NULL

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
bookcollection
TigersAnimals
(2)
bookcollection
PlantsFlowers
(3) сервер БД сгенерирует ошибку
(4)
bookcollection
FlowersPlants
(5)
bookcollection
TigersAnimals
FlowersPlants
Какие операторы сравнения могут применяться в условии HAVING, если в качестве правого операнда используется многострочный подзапрос:
(1) <>
(2) IN LIST
(3) <
(4) >=ANY
(5) <=ANY
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

Запрос предназначен для отображения названий книг, стоимость которых ниже среднеарифметического значения стоимости всех книг.

SELECT Title FROM Books WHERE Price________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) < (SELECT AVG (Price) from Books)
(2) < "SELECT AVG (Price) from Books"
(3) < AVG (Price) from Books
(4) < ALL( SELECT AVG (Price) from Books)
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11General PsychologyStreet Publishing1100120
12FlowersBilly Press900302010

, таблица Exchange_System (абонемент) содержит данные:

Group_idGroup_titleAdd_info
10Educational
20Scientific

Запрос SQL имеет следующий вид:

SELECT r.n1 name1 From (SELECT Title n1, Group_title n2 FROM Books, Exchange_System WHERE Books.Group_id = Exchange_System.Group_id) r WHERE length (r.n2) < length (r.n1)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name1
General Psychology
Flowers
(2) сервер БД сгенерирует ошибку
(3)
name1
Flowers
(4)
name1
General Psychology
(5) ни одна строка не будет отобрана
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11General PsychologyStreet Publishing1100120
12FlowersBilly Press900302010

Запрос SQL имеет вид:

SELECT b.Title as "Book title" FROM Books b WHERE Price IN (select * from Books where Book_id='12')

При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) подзапрос является многостолбцовым, хотя в данном случае он должен возвращать значение только одного столбца
(2) подзапрос должен быть заключен в кавычки, а не в скобки
(3) подзапрос возвращает одну строку, тогда как оператор сравнения IN может применяться только для многострочных подзапросов
(4) во фразе WHERE пропущен префикс "b" в названии столбца Price
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

Запрос предназначен для отображения наименований издательств (Publishing), выпустивших не меньшее число книг (наименований книг), чем издательство "New York" и издательство "Eagle".

SELECT Publishing FROM Books GROUP BY Publishing Having count (Book_id) __________ (select Count (Book_id) from Books group by Publishing having Publishing in ('New York', 'Eagle') )

Укажите оператор сравнения, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) >= ANY
(2) >=
(3) >= ALL
(4) >= ALL IN LIST
Имеется модель данных:files

, где таблица Price_grade (ценовые категории) имеет структуру:

Price_grade: Grade_id (number PK), Lowest_price (number), Highest_price (number)

, таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number, NOT NULL)

Запрос SQL предназначен для отображения наименований книг, цена которых относится к третьей ценовой категории (Price_Grade.Grade_id):

SELECT Title FROM Books b WHERE ______ (SELECT Lowest_price, Highest_price FROM Price_grade where_________)

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата

(1) первый фрагмент: EXIST второй фрагмент: Books.Price between Lowest_price and Highest_price and Grade_id =3
(2) первый фрагмент: Price between второй фрагмент: Grade_id =3
(3) первый фрагмент: ROWS EXIST второй фрагмент: Price between Lowest_price and Highest_price and Grade_id =3
(4) первый фрагмент: EXISTS второй фрагмент: Price between Lowest_price and Highest_price and Grade_id =3
Имеется модель данных:files

, где таблица Books содержит данные:

files
Book_idTitlePublishingSizeQuantityPrice
11TigersStreet Publishing3001300
12FlowersBilly Press2000450
13TigersWorld Press3000400
14TigersStreet Publishing3001250

Запрос SQL имеет вид:

SELECT Book_id FROM Books b WHERE (Title, Size) in (SELECT Title, Size FROM Books WHERE Publishing = 'Street Publishing') AND Price < any (select Price from Books where Publishing = 'Street Publishing')

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) сервер БД сгенерирует ошибку
(2) строки не выбраны
(3)
name
11
13
14
(4)
name
14
(5)
name
13
Какой из перечисленных операторов может использоваться для организации пересечения результатов выполнения оператора SELECT:
(1) EXCEPT
(2) INTERSECT ALL
(3) INTERSECT
(4) EXISTS
(5) EXIST
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11TurtleStreet Publishing1100110
12FlowersBilly Press900302020

, таблица Exchange_System (абонемент) содержит данные:

Group_idGroup_titleAdd_info
10Educational
20Scientific

Запрос SQL имеет вид:

Select substr (Title,1,1) as "Name" from Books union all Select substr (Group_title, 1,1) from Exchange_System

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) сервер БД сгенерирует ошибку
(2)
Name
Turtle
Flowers
Educational
Scientific
(3)
Name
t
s
e
(4)
Name
T
F
E
S
(5) строки не выбраны

Таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2 (300)), Mobile_phone (varchar2 (20))

Таблица Workers имеет структуру:

Workers: Worker_id (number, PK), Worker_name (varchar2 (20)), Position (number), Salary (number)

Запрос предназначен для отображения общего списка имен сотрудников и читателей (в списке не должно быть повторяющихся имен):

SELECT Name Name FROM Readers _________ SELECT Worker_name Name FROM Workers

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата

(1) INTERSECT
(2) UNION DISTINCT
(3) EXIST
(4) UNION ALL
(5) UNION
Какое ключевое слово (или словосочетание) следует использовать во фразе SELECT для исключения строк-дубликатов из итоговой выборки:
(1) DISTINCT
(2) SUPRESS DUPLICATES
(3) RESTRICTED
(4) WITHOUT DUPLICATES
(5) FIRST APPEARANCE
Имеется модель данных: files

, где таблица Readers содержит данные:

Reader_idNameDay_Of_BirthCommentsAddressMobile_tel
11Tom16.09.1981Moscow, Zhukova, 2
12Alex17.12.1989Moscow, Palehskaya, 12

Запрос, предназначенный для генерации отчета, состоящего из одного столбца, который должен включать для каждого читателя имя и фразу "is a reader" имеет вид:

SELECT Name || "is a reader" FROM Readers

При выполнении запроса сервер БД генерирует ошибку. Среди предложенных вариантов укажите правильную причину ошибки:

(1) в предложении SELECT пропущена обязательная фраза ORDER BY
(2) операция конкатенации не может применяться в выражениях во фразе SELECT
(3) неверная запись оператора конкатенации. Вместо "||" следует использовать "+"
(4) строковая константа во фразе SELECT должна заключаться в одинарные кавычки
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number not null), Price (number not null).

Запрос предназначен для отображения названия и суммарной стоимости всех экземпляров (Price*Quantity) каждой книги, результат должен быть отсортирован в порядке убывания суммарной стоимости:

SELECT Title, ________________ FROM Books ORDER BY _____________________

Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знаки подчеркивания для получения корректного запроса, решающего поставленную задачу.

(1) первый фрагмент: (Price*Quantity) as total_price второй фрагмент: total_price asc
(2) первый фрагмент: Price*Quantity total_price второй фрагмент: 2 desc
(3) первый фрагмент: (Price*Quantity) as "total price" второй фрагмент: total price
(4) первый фрагмент: Price*Quantity "total price" второй фрагмент: "total price" desc
Имеется модель данных:files

, где таблица Authors содержит данные:

Author_idNameDay_Of_BirthAddress
10Alex11.03.1978Moscow, Sokolova, 15
20Dennis12.09.1964Moscow, Dubovina, 34
30Alex12.08.1983Moscow, Leninsky prospect, 45
40Dennis11.11.1974Moscow, Galushko, 5

Запрос имеет следующий вид:

SELECT Name, Day_Of_Birth FROM Authors ORDER BY Name asc, Day_Of_Birth desc

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
NameDay_Of_Birth
Alex11.03.1978
Alex12.08.1983
Dennis11.11.1974
Dennis12.09.1964
(2)
NameDay_Of_Birth
Dennis11.11.1974
Dennis12.09.1964
Alex11.03.1978
Alex12.08.1983
(3)
NameDay_Of_Birth
Alex12.08.1983
Alex11.03.1978
Dennis11.11.1974
Dennis12.09.1964
(4) сервер БД сгенерирует ошибку
Укажите, какие из перечисленных операторов являются недопустимыми операторами сравнения в Oracle:
(1) >= (больше или равно)
(2) in list (в списке)
(3) between and (в интервале)
(4) like pattern (поиск по шаблонам)
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press900220

Запрос предназначен для отображения всех названий книг, изданных издательствами, названия которых начинаются с символа "S"

SELECT Title FROM Books WHERE _____________________

Из приведенных ниже вариантов кода укажите те варианты, которыми можно заменить знак подчеркивания для получения корректного запроса, решающего поставленную задачу.

(1) Publishing like pattern 'S%'
(2) Publishing > 'R' AND Publishing < 'T'
(3) Publishing LIKE "S%"
(4) Publishing LIKE 'S_'
(5) Publishing LIKE 'S%'
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number).

Запрос предназначен для получения отчета, содержащего информацию обо всех книгах, названия которых начинаются с символов "А", "В" и "С".

SELECT Title FROM Books Where __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) Title IN ('A%','B%','C%')
(2) Title LIKE '[ABC]%'
(3) Title > 'C' or Title LIKE 'C%'
(4) Title LIKE 'C%' OR Title LIKE 'A%' or Title LIKE 'B%'
Положим условия: у1, у2, у3 являются истинными, а условия x1, x2, x3 – ложными.

Какие из перечисленных комплексных условий во фразе WHERE будут истинными:

(1) x1 or x2 and y2 or y1
(2) (x1 and y1 or y2) or (x2 and (y1 or y3))
(3) (y3 and (y1 and (x3 or not y2))) or (x3 and (y1 or y3))
(4) у1 and not x1 or у2 and x2 or not у3 and x3
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number not null), Price (number not null)

Запрос предназначен для поиска книг, объемом более 500 стр. (Size) и общей стоимостью всех экземпляров более 1500 (Quantity*Price) и книг, объемом менее 100 стр. и общей стоимостью экземпляров также превышающей 1500.

SELECT Title From Books WHERE___________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) (Size > 500 and Price * Quantity > 1500) and (Size < 100 and Price * Quantity > 1500)
(2) Price * Quantity > 1500 and Size > 500 or Size < 100
(3) Size > 500 and Price * Quantity > 1500 or Size < 100 and Price * Quantity > 1500
(4) Price * Quantity > 1500 and (Size > 500 or < 100)
(5) Price * Quantity > 1500 and (Size > 500 or Size < 100)
Какие из перечисленных функций не используются для работы с датами в Oracle:
(1) ROUND
(2) DATE_DIFF
(3) TRUNC
(4) ROUND_DATE
Имеется модель данных:files

, где таблица Authors содержит данные:

Author_idNameDay_Of_BirthAddress
10Alex_Tuner11.03.1978Moscow, Sokolova, 15
20Dennis_Jackson12.09.1964Moscow, Dubovina, 34

Запрос SQL имеет вид

SELECT substr (Name, instr (Name, '_'),40) sname FROM Authors

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса

(1)
sname
_Tuner
_Jackson
(2)
sname
Alex_
Dennis_
(3)
sname
Alex
Dennis
(4) сервер БД сгенерирует ошибку
(5)
sname
Tuner
Jackson
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing1100130$
12FlowersBilly Press900220$

Запрос предназначен для получения отчета, содержащего названия всех книг, общая стоимость экземпляров которых превышает 900$. Столбец Price обладает типом данных varchar2(20), предполагается, если в поле Quantity значение отсутствует, книга представлена в одном экземпляре.

SELECT Title FROM Books WHERE ______________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата при условии, что столбец Price имеет ограничение NOT NULL:

(1) substr (Price,-1, 40)*nvl (Quantity, 1) > 900
(2) substr (Price,1,instr (Price,'$')-1)) * nvl (Quantity, 1) > 900
(3) substring (Price,1,instr (Price,'$')-1)) * nvl (1, Quantity) > 900
(4) nvl (substr (Price,1,instr (Price,'$')-1) * Quantity, substr (Price,1,instr (Price,'$') - 1)) > 900
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing1100130.38

Запрос имеет следующий вид:

SELECT ROUND (Price*2, 1) as report from Books

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса, при условии, что столбец Price имеет тип данных number:

(1) сервер БД сгенерирует сообщение об ошибке
(2)
report
60.8
(3)
report
60
(4)
report
70
(5)
report
71
Какие из приведенных выражений позволяют получить число и месяц даты (в любом формате), которая наступит через 56 дней относительно текущей даты, если форматом даты по умолчанию является формат "dd.mm.yyyy".
(1) select substr (to_char (sysdate + 56), 1, 5) from dual
(2) select substring (to_string (sysdate + 56), 1, 5) from dual
(3) select to_char (adddays(sysdate , 56), 'dd mm') from dual
(4) select to_date (sysdate + 56, "dd month") from dual
(5) select to_char (sysdate + 56, 'dd month') from dual
Имеется модель данных:files

, где таблица Authors имеет структуру:

Authors: Author_id (number, PK), Name (varchar2 (40)), Day_Of_Birth (date), Address (varchar2 (500)))

Запрос предназначен для отображения имен писателей в возрасте до 25 лет.

SELECT Name FROM Authors WHERE TRUNC(MONTHS_BETWEEN(CURRENT_DATE, Day_Of_Birth)/12) < 25

В результате выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) функции trunc не существует
(2) функция trunc не может использоваться для преобразования дат
(3) неверное число аргументов, переданное в функцию MONTHS_BETWEEN
(4) некорректным является первый аргумент, переданный в функцию MONTHS_BETWEEN (вместо current_date следовало использовать sysdate)
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press900220

Запрос имеет следующий вид:

SELECT Title, CASE When Size < 1000 then Price*1.2 When Size >=1000 then Price*0.8 as new_price FROM Books

При попытке выполнения запроса сервер БД генерирует ошибку, среди предложенных вариантов выберите действие, выполнение которого позволит устранить ошибку:

(1) вместо ключевого слова when использовать ключевое слово if
(2) удалить слово then во фразах When
(3) добавить ключевое слово END после псевдонима new_price
(4) добавить ключевое слово END перед предлогом as
(5) удалить из запроса псевдоним, то есть фразу as new_price
Текущей датой является: "20.09.2008" Запрос SQL имеет следующий вид: select decode (to_char(systimestamp, 'q'), 3, 'three', 4, 'four', 2, 'two', 1, 'one') report from dual

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса:

(1)
report
one
(2)
report
four
(3)
report
two
(4)
report
three
(5) сервер БД сгенерирует сообщение об ошибке
Какие из перечисленных функций являются групповыми:
(1) TRUNC
(2) AVG
(3) COUNT
(4) COS
(5) MAX
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number)

Запрос имеет следующий вид:

SELECT MAXIMUM (ALL round (nvl (Size, 0), -2)) as result FROM Books ORDER BY result

При попытке выполнить запрос сервер генерирует ошибку. Укажите правильную причину ошибки:

(1) функции MAXIMUM не существует
(2) идентификатор ALL не может использоваться при передаче аргумента в групповую функцию
(3) во фразе ORDER BY не допускается использование псевдонимов
(4) групповая функция не может принимать в качестве аргумента однострочную функцию
(5) неверное число аргументов передано в функцию round
Имеется модель данных:files

, где таблица Authors содержит данные:

Author_idNameDay_Of_BirthAddress
10Alex11.03.1978Moscow, Sokolova, 15
20Dennis12.09.1964Moscow, Dubovina, 34
30alex12.08.1983Moscow, Leninsky prospect, 45
40Dennis11.11.1974Moscow, Galushko, 5

Запрос имеет следующий вид:

SELECT Count (DISTINCT Name) as report FROM Authors

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) сервер БД сгенерирует ошибку
(2)
report
2
(3)
report
3
(4)
report
4

Фраза GROUP BY:

(1) не допускает использования арифметических выражений
(2) содержит синтаксическую ошибку
(3) не допускает использования псевдонимов столбцов
(4) предшествует фразе ORDER BY
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number NOT NULL)

Запрос SQL имеет вид:

SELECT VARIANCE (ALL nvl (Quantity, 1) * Price) FROM Books GROUP BY Publishing WHERE nvl (Quantity, 1) * Price > 5000 and Publishing <> 'Black cat'

При попытке выполнить запрос, сервер БД генерирует ошибку. Укажите правильную причину ошибки:

(1) в функции VARIANCE используется недопустимый модификатор ALL
(2) функции VARIANCE не существует
(3) запрос, включающий групповые функции, не может включать фразу WHERE
(4) во фразе WHERE не могут использоваться столбцы, по которым осуществляется группировка, то есть которые присутствуют во фразе GROUP BY
(5) фраза WHERE должна следовать перед фразой GROUP BY, но не после нее
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001300
12FlowersBilly Press9002450
13The great warStreet Publishing20010240
14The roadBilly Press1100780

Запрос SQL имеет следующий вид

SELECT Count (Quantity) report FROM Books GROUP BY Publishing, round (Size, -3)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
report
1
1
2
(2)
report
1
1
1
(3) сервер БД сгенерирует ошибку
(4)
report
2
1
(5)
report
1
1
1
0
Имеется модель данных:files

, где таблица Authors имеет структуру:

Authors: Author_id (number, PK), Name (varchar2 (40)), Day_Of_Birth (date NOT NULL), City (varchar2 (500))

Запрос предназначен для определения среднеарифметических значений возрастов писателей, представляющих разные города.

SELECT ___________ FROM Authors ___________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата. Отчет должен быть отсортирован в порядке возрастания среднеарифметических значений возрастов

(1) первый фрагмент: City, AVG (trunc (months_between (sysdate, Day_Of_Birth)/12)) age второй фрагмент: group City order by AVG (trunc (months_between (sysdate, Day_Of_Birth)/12))
(2) первый фрагмент: City, AVERAGE (trunc (months_between (sysdate, Day_Of_Birth)/12)) age второй фрагмент: group by City order by age
(3) первый фрагмент: City, AVG (trunc (months_between (sysdate, Day_Of_Birth)/12)) age второй фрагмент: group by City order by 2
(4) первый фрагмент: City, AVG (trunc (months_between (sysdate, Day_Of_Birth)/12)) age второй фрагмент: group by substr (City, 1, 1000) order by 2

Декартово произведение:

(1) получается, если в запросе на выборку данных из нескольких таблиц отсутствует условие WHERE
(2) это операция, обеспечивающая соединение строк из исходных таблиц на основе совпадения значений в одноименных столбцах
(3) обеспечивается применением оператора CROSS JOIN
(4) обеспечивается применением оператора FULL JOIN
(5) это операция реляционной алгебры, которая лежит в основе любого соединения
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

, таблица Authors имеет структуру:

Authors: Author_id (number, PK), Name (varchar2 (40)), Day_Of_Birth (date), Address (varchar2 (500)))

, таблица Book_Auth имеет структуру:

Book_Auth: Book_id (number), Author_id (number)

Запрос SQL имеет вид:

SELECT t.Title, a.Name FROM Books b JOIN Book_Auth ba ON b.Book_id JOIN Authors a ON a.Author_id

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) ключевое слово ON является недопустимым, вместо него следует использовать ключевое слово USING
(2) псевдонимы таблиц не могут использоваться во фразе SELECT
(3) в запросе SQL не допускается присутствие нескольких фраз JOIN
(4) некорректно заданы условия соединения строк после ключевых слов ON (с этой целью следовало использовать логические выражения)
(5) столбцы Book_id и Author_id в таблице Book_Auth не являются внешними ключами, ссылающимся на одноименные столбцы в таблицах Books и Authors, поэтому не могут использоваться для соединения строк из указанных таблиц
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL), Group_id (number, FK)

, таблица Exchange_System (абонемент) имеет структуру:

Exchange_System: Group_id (number, PK), Group_title (varchar2 (100)), Add_info (varchar2 (100))

Запрос SQL предназначен для отображения информации о книгах. Отчет должен включать названия книг и номера соответствующих им библиотечных абонементов (Group_id). В отчет также должны попасть абонементы, которым не приписаны еще никакие книги, а также книги, не переданные ни на один абонемент.

SELECT b.Title, e.Group_id FROM _________________________

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) Books OUTER JOIN Exchange_System on Books.Group_id = Exchange_System.Group_id
(2) Books b, Exchange_System e where b.Group_id (+) = (+) e.Group_id
(3) Books b JOIN Exchange_System e on b.Group_id (+) = (+) e.Group_id
(4) Books b FULL Exchange_System e on b.Group_id = e.Group_id
(5) Books b FULL OUTER JOIN Exchange_System e on b.Group_id = e.Group_id
Имеется модель данных: files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number, NOT NULL), Group_id (number, FK)

Запрос SQL предназначен для отображения номеров абонементов (Exchange_system.Group_id) библиотеки и числа книг, переданных на каждый абонемент, если на абонементе нет книг, в отчете напротив номера этого абонемента, должно находиться значение 0.

SELECT e.Group_id, count (_________) FROM Books b _________ b.Group_id = e.Group_id GROUP BY ______________

Какие фрагменты кода следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.

(1) первый фрагмент: e.Group_id; второй фрагмент: right outer join Exchange_System e on третий фрагмент: e.Group_id
(2) первый фрагмент: Book_id; второй фрагмент: , Exchange_System e where третий фрагмент: b.Group_id
(3) первый фрагмент: Books.Book_id; второй фрагмент: left outer join Exchange_System e on третий фрагмент: e.Group_id
(4) первый фрагмент: Book_id; второй фрагмент: right outer join Exchange_System e on третий фрагмент: e.Group_id

Таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press9003022

Таблица Price_grade (ценовые категории) содержит данные:

Grade_idLowest_priceHighest_price
1020
2211000

Запрос SQL имеет вид:

SELECT Title, Price_grade.Grade_id FROM Books, Price_grade g WHERE nvl (Price, 0) between Lowest_price and Highest_price AND Grade_id > 0

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Titleg.Grade_id
Turtles1
Flowers2
(2)
Titleg.Grade_id
Flowers2
(3)
Titleg.Grade_id
Turtles
Flowers2
(4) сервер сгенерирует ошибку
Имеется модель данных:files

, где таблица Books включает информацию о книгах, некоторые из которых могут одновременно выступать в качестве отдельных изданий и включаться в сборники (Collection), и содержит данные:

Book_idTitlePublishingSizeQuantityPriceCollection
11TigersStreet Publishing300230013
12BearsBilly Press20045013
13AnimalsStreet Publishing30000240
14PlantsBilly Press11001780

Запрос SQL имеет следующий вид:

SELECT c.Title collection, sum (nvl (b.Quantity, 1)*b.Price) report FROM Books c JOIN Books b ON b.Collection = c.Book_id GROUP BY c.Title

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
collectionreport
Animals1050
(2)
collectionreport
Animals1050
Plants
(3)
collectionreport
Animals750
(4)
collectionreport
Animals450
(5) сервер БД сгенерирует ошибку
Какие операторы сравнения могут применяться в условии WHERE, если в качестве правого операнда используется подзапрос (однострочный):
(1) >
(2) =<
(3) IN LIST
(4) = NOT ALL
(5) gt;=
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

, где таблица Price_grade (ценовые категории) имеет структуру:

Price_grade (ценовые категории): Grade_id (number, PK), Lowest_price (number), Highest_price (number)

Запрос предназначен для отображения названий всех книг, стоимость которых попадает в ту же категорию (Grade_id), что и категория стоимости книги идентификатором 432:

SELECT Title FROM Books, Price_grade WHERE Books.Price between Price_grade.Lowest_price and Price_grade.Highest_price AND Grade_id ________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата

(1) = ANY (SELECT Grade_id FROM Books, Price_grade WHERE Price between Lowest_price and Highest_price AND Book_id = 432)
(2) = SELECT Grade_id FROM Books, Price_grade WHERE Price between Lowest_price and Highest_price AND Book_id = 432
(3) = (SELECT Grade_id FROM Books, Price_grade WHERE Price between Lowest_price and Highest_price AND Book_id = 432)
(4) = "SELECT Grade_id FROM Books, Price_grade WHERE Price between Lowest_price and Highest_price AND Book_id = 432"
Имеется модель данных:files

, где таблица Books включает информацию о книгах, некоторые из которых могут одновременно выступать в качестве отдельных изданий и включаться в сборники (Collection), и содержит данные:

Book_idTitlePublishingSizeQuantityPriceCollection
11TigersStreet Publishing300230013
12RosesBilly Press20045014
13AnimalsStreet Publishing30000240
14PlantsBilly Press11001780

Запрос SQL имеет следующий вид:

SELECT r.n1 name1, r.n2 name2 From (SELECT b.Title n1, c.Title n2 FROM Books b, Books c WHERE b.Collection = c.Book_id) r WHERE SUBSTR (r.n1, -1) = SUBSTR (r.n2, -1)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name1name2
TigersAnimals
(2)
name1name2
TigersAnimals
RosesPlants
(3) нет отобранных строк
(4)
name1name2
AnimalsTigers
PlantsRoses
(5)
name1name2
RosesPlants
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11General PsychologyStreet Publishing1100120
12FlowersBilly Press900302010

Запрос SQL имеет вид:

SELECT b.Title as "Book title" FROM Books b WHERE Price > select AVG (Price) from Books

При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) псевдоним Book title должен быть записан без кавычек
(2) в подзапросе не могут использоваться групповые функции
(3) подзапрос должен быть заключен в кавычки
(4) подзапрос должен быть заключен в скобки
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number, NOT NULL), Group_id (number, FK)

Запрос предназначен для отображения наименований книг, стоимость которых, округленная до десятков, равна средней стоимости книг, выпущенных одним из издательств (Publishing) "Eagle", "Sun rise", также округленной до десятков.

SELECT Title FROM Books WHERE round (Price, ____) ____ (select round (AVG (Price), ______) from Books group by Publishing having Publishing in ('Eagle', 'Sun rise'))

Выберите варианты кода, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) первый и третий фрагмент: -1, второй фрагмент: = ANY
(2) первый и третий фрагмент: 1, второй фрагмент: IN
(3) первый и третий фрагмент: -2, второй фрагмент: = IN LIST
(4) первый и третий фрагмент: -1, второй фрагмент: IN
(5) первый и третий фрагмент: 1, второй фрагмент: =
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number, NOT NULL)

, таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2 (300)), Mobile_phone (varchar2 (20))

, таблица Reader_Book имеет структуру:

Reader_Book: Reader_id (number PK FK), Book_id (number PK FK), Quantity (number)

Запрос предназначен для отображения списка названий книг, которые выданы читателю 'Peter':

SELECT Title FROM Books b JOIN Reader_Book rb ON b.Book_id = rb.Book_id WHERE EXISTS (SELECT * from Readers r WHERE Name = 'Peter')

При выполнении данного запроса отбирается избыточное количество строк, т.е. названия даже тех книг, которые не находятся на руках у читателя 'Peter'. Объясните причину отклонения получаемого результата от ожидаемого результата.

(1) если запрос содержит оператор JOIN, то следующий далее оператор EXISTS игнорируется
(2) в подзапросе EXISTS пропущено условие: rb.Reader_id = r.Reader_id
(3) в подзапросе EXISTS вместо символа "*" следовало использовать название столбца Name
(4) перед ключевым словом EXISTS пропущено логическое отрицание NOT
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TigersStreet Publishing3001300
12FlowersBilly Press2000450
13TigersWorld Press3000240
14TigersStreet Publishing3001300

Запрос SQL имеет вид:

SELECT Book_id FROM Books b WHERE Title, Size in (SELECT Title, Size FROM Books WHERE Publishing = 'Street Publishing') AND Publishing <> 'Street Publishing'

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Book_id
13
(2) сервер БД сгенерирует ошибку
(3) строки не выбраны
(4)
Book_id
14
(5)
Book_id
13
14

Оператор MINUS:

(1) используется для исключения из итоговой выборки строк, не удовлетворяющих заданным условиям
(2) исключает из выборки повторяющиеся строки
(3) является унарным оператором
(4) не существует
(5) позволяет получить разность результатов выполнения оператора SELECT
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11TurtleStreet Publishing1100110
12Sun riseBilly Press900302020

, таблица Exchange_System (абонемент) содержит данные:

Group_idGroup_titleAdd_info
10Educational
20Scientific

Запрос SQL имеет вид:

select Title Name from Books where exists (select * from Exchange_System where substr (Title,1,1)=substr (Group_title, 1,1)) union all select Group_title Name from Exchange_System where exists (select * from Books where substr (Title,1,1)=substr (Group_title, 1,1))

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
Name
Sun rise
Scientific
(2) сервер БД сгенерирует ошибку
(3)
Name
Sun rise
s
(4)
Name
Sun rise
s
s
(5) строки не выбраны

Таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2 (300)), Mobile_phone (varchar2 (20))

Таблица Workers имеет структуру:

Workers: Worker_id (number, PK), Worker_name (varchar2 (20)), Position (number), Salary (number)

Запрос предназначен для отображения имен читателей (Name), которые не являются в то же время сотрудниками:

SELECT Name Name FROM Readers _________ SELECT Worker_name Name FROM Workers

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата

(1) INTERSECTION
(2) INTERSECT
(3) MINUS
(4) EXCEPT
(5) EXIST
Что необходимо написать после оператора SELECT для исключения строк-дубликатов из итоговой выборки:
(1) ключевую фразу /*+FIRST_ROWS*/
(2) ключевое слово RESTRICTED
(3) ключевое слово DISTINCT
(4) ключевое фразуWITHOUT DUPLICATES
(5) ключевую фразуFIRST APPEARANCE
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press900220

Запрос SQL имеет вид:

SELECT Title || ' costs ' || Price as report FROM Books ORDER BY Book_id ascend

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса.

(1)
Report
Turtle costs
Flowers costs 20
(2)
Report
Flowers costs 20
(3)
Report
NULL
Flowers costs 20
(4) cервер БД сгенерирует ошибку
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number NOT NULL).

Запрос предназначен для получения отчета, который содержит информацию о названии каждой книги и общего дохода от продажи всех экземпляров этой книги с учетом налога с продаж (13%)

SELECT Title, __________ FROM Books

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) Price*Quantity-0.13*Price*Quantity
(2) Price*Quantity*(1-0.13)
(3) Price*Quantity*1-0.13
(4) 1-0.13*Price*Quantity
Имеется модель данных:files

, где таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2(20)), Day_Of_Birth (date), Comments (varchar2(100)), Address (varchar2(300)), Mobile_phone (varchar2(20))

Запрос, предназначенный для генерации отчета, состоящего из одного столбца, который должен включать для каждого читателя имя и фразу "is a reader" имеет вид:

SELECT Name as reader_name || 'is a reader' FROM Readers

При выполнении запроса сервер БД генерирует ошибку. Среди предложенных вариантов укажите правильную причину возникновения ошибки:

(1) операции "||" не существует, для соединения строковых значений следует использовать операцию "+"
(2) строковая константа во фразе SELECT должна заключаться в двойные кавычки
(3) в запросе пропущена обязательная фраза ORDER BY
(4) псевдоним reader_name не может следовать в данном примере непосредственно за названием столбца Name
Выберите из представленного списка все операторы, которые не могут применяться для сравнения строковых значений в Oracle:
(1) >, < (больше, меньше)
(2) in (в списке)
(3) between and (в интервале)
(4) like
(5) все перечисленные операторы МОГУТ использоваться для сравнения строк
Имеется модель данных:files

, где таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2(20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2(300)), Mobile_phone (varchar2(20))

Запрос, предназначенный для генерации отчета, содержащего информацию о читателях, которые родились в 1981 и 1982 гг. и имеющих мобильные телефоны, имеет вид:

SELECT Name FROM Readers WHERE Mobile_phone NOT NULL AND Day_Of_Birth between '01.01.81' AND '31.12.82'

При выполнении запроса сервер БД генерирует ошибку. Среди предложенных вариантов укажите правильную причину ошибки при условии, что форматом даты по умолчанию является формат: "dd.mm.yy":

(1) для записи дат должны быть использованы двойные кавычки
(2) для сравнения значений типа date не может применяться операция сравнения between and
(3) в условии WHERE происходит сравнение данных типа DATE (Day_Of_Birth) со строковыми константами, и при этом не выполняется явного преобразования типов данных, что недопустимо
(4) для указания даты должен использоваться формат DD.MM.YYYY
(5) неверный синтаксис оператора BETWEEN … AND
(6) в первом условии (перед оператором NOT NULL) пропущено слово IS
Имеется модель данных:files

, где таблица Authors содержит данные:

Author_idNameDay_Of_BirthAddress
10Alex_Parker11.03.1978Moscow, Sokolova, 15
20Dennis12.09.1964Moscow, Dubovina, 34
............

Запрос предназначен для получения отчета, содержащего информацию об авторах, для которых помимо имени известна и фамилия (фамилия отделяется от имени символом "_" в столбце Name).

SELECT Name FROM Authors WHERE __________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) Name LIKE '%!_%' ESCAPE '!'
(2) Name LIKE "%!_%" ESCAPE "!"
(3) Name = '%!_' ESCAPE '!'
(4) Name LIKE '%ESCAPE_%'
Выберите из предложенного списка варианты с правильной расстановкой приоритетов (очередности выполнения) различных групп операторов:
(1) Арифметические операторы Логические операторы (AND, OR) Операторы сравнения (<, >, = …) Оператор конкатенации
(2) Арифметические операторы Оператор конкатенации Операторы сравнения (<, >, = …) Логические операторы (AND, OR)
(3) Логические операторы (AND, OR) Арифметические операторы Операторы сравнения (<, >, = …) Оператор конкатенации
(4) Арифметические операторы Оператор конкатенации Логические операторы (AND, OR) Операторы сравнения (<, >, = …)
(5) ничего из перечисленного
Имеется модель данных:files

, где таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2 (300)), Mobile_phone (varchar2 (20))

Запрос предназначен для нахождения имен всех Московских ('Moscow') и Петербургских читателей ('St.Petersburg'), родившихся в период с 1981 по 1985 гг.

SELECT Name FROM Readers WHERE __________________

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата, при условии, что форматом даты по умолчанию является формат "dd.mm.yyyy":

(1) Address IN ('%Moscow%', '%St.Petersburg%') and Day_Of_Birth between '01.01.1981' and '31.12.1985'
(2) (Address LIKE '%Moscow%' OR Address LIKE '%St.Petersburg%') and Day_Of_Birth between '01.01.1981' and '31.12.1985'
(3) Address LIKE '%Moscow%' and Day_Of_Birth between '01.01.1981' and '31.12.1985' OR Address LIKE '%St.Petersburg%' and Day_Of_Birth between '01.01.1981' and '31.12.1985'
(4) Address LIKE '%Moscow%' OR Address LIKE '%St.Petersburg%' and Day_Of_Birth >= '01.01.1981' and Day_Of_Birth <= '31.12.1985'
Какие из перечисленных функций не являются групповыми:
(1) AVG
(2) DECODE
(3) ROUND
(4) MAX
(5) NVL
Имеется модель данных:files

, где таблица Readers содержит данные:

Reader_idNameDay_Of_BirthCommentsAddressMobile_tel
11Tom16.09.1981Moscow, Zhukova 2
12Alex17.12.1989Moscow, Palehskaya 12

Запрос предназначен для получения отчета, состоящего из одного столбца, который включает имена читателей и города, в которых они проживают, разделенные запятой. Название городов присутствуют в поле Address и отделяются запятой от остальной части адреса.

SELECT __________ FROM Readers

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) concat (Name, ', ', substr (Address, 1, instr (Address, ',')-1))
(2) concat (Name, concat ('|| ', substr (Address, 1, instr (Address, ',')-1)))
(3) Name + ', '+ substring (Address, 1, instring (Address, ',')-1)
(4) Name + ', '+ substr (Address, 1, instr (Address, ',')-1)
(5) Name || ', '|| substr (Address, 1, instr (Address, ',')-1)
Запрос имеет следующий вид: SELECT instr ('my_lucky_test','_', 1, 2) report from dual

Среди представленных вариантов выберите корректный вариант итогового отчета:

(1)
report
3
(2) сервер сгенерирует ошибку
(3)
report
5
(4)
report
9
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly_Press900220

Запрос имеет следующий вид

SELECT trim('_' from substring (Publishing, 1, instr(Publishing, '_') )) as report FROM Location

Среди представленных вариантов выберите корректный вариант итогового отчета:

(1)
report
Street_
Billy_
(2) сервер БД сгенерирует ошибку
(3)
report
Street_
Billy_Press
(4)
report
Street_Publishing
Billy_Press
Какое из перечисленных выражений можно использовать для получения названия текущего дня недели
(1) select date_name (day, sysdate ())
(2) select to_char (sysdate, 'day') from dual
(3) select Datename ('dw', getdate()) from dual
(4) select to_date (weekday, getdate()) from dummy
Имеется модель данных:files

, где таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2 (300)), Mobile_phone (varchar2 (20)), Start_date (date)

Запрос предназначен для отображения имен читателей и дат окончания сроков действия их абонементов, которые наступают по истечению 8 лет со дня записи в библиотеку (Start_date).

SELECT Name, _____________________ FROM Readers

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата:

(1) add_years (Start_date, 8)
(2) addyears (Start_date, 8)
(3) date_add ('yy', 8, Start_date)
(4) add_months (Start_date, 12*8)
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number NOT NULL).

Запрос предназначен для отображения наименований книг и их стоимости (Price), увеличенной на 20%, если книга присутствует в единственном экземпляре, и на 10% во все остальных случаях. (Изменение стоимость должно быть отражено только в отчете, но не в самой БД)

SELECT Title, _____________________ FROM Books

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) if (Quantity = 1) then Price*1.2 else Price*1.1 as new_Price
(2) decode (Quantity, 1 then Price * 1.2 else Price*1.1) as new_Price
(3) decode (Quantity, 1, Price * 1.2, Price*1.1) as new_Price
(4) case Quantity When 1 then Price*1.2 Else Price*1.1 END as new_Price
(5) сase Quantity When 1, Price*1.2 Else Price*1.1 as new_Price END
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing110030
12FlowersBilly Press900220

Запрос SQL имеет следующий вид:

SELECT nvl2 (Price*Quantity, Price*Quantity *2, Price*2) report from Books ORDER BY 1 desc

Выберите корректный вариант отчета, получающегося в результате выполнения приведенного выше запроса:

(1)
report
80
60
(2)
report
30
40
(3)
report
80
(4) сервер БД сгенерирует ошибку
(5)
report
60
80

Групповые функции:

(1) могут использоваться только во фразе SELECT
(2) могут использоваться в условии HAVING
(3) не обрабатывают строки, для которых выражение или столбец, переданные в функцию в качестве аргумента, принимает неопределенные значения
(4) возвращают значение NULL, если переданное в качестве аргумента выражение или столбец, принимает для одной из строк, обрабатываемых функцией, неопределенное значение
(5) могут использоваться во фразе ORDER BY
Имеется модель данных: files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number NOT NULL)

Запрос предназначен для получения суммарного дохода, который можно получить от продажи всех книг. Предполагается, что если в поле Quantity отсутствует значение, книга представлена в единственном экземпляре.

SELECT SUM (____________) FROM Books

Выберите из предложенных вариантов те, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата при условии, что столбец Price не может принимать значение NULL.

(1) Price*Quantity
(2) nvl (Quantity, 1)*Price
(3) Price * (decode (Quantity, NULL, 1, Quantity))
(4) Price * (case nvl (Quantity, 1) when 1 then 1 else Quantity end)
Имеется модель данных:files

, где таблица Readers содержит данные:

Reader_idNameDay_Of_BirthCommentsAddressMobile_tel
11Tom16.09.1981 PublishingMoscow, Zhukova 2
12Alex17.12.1989Moscow, Palehskaya 12
13Ruddy09.11.1999Moscow, Palehskaya 35
1408.02.2001Moscow, Zhukova 15

Запрос имеет следующий вид:

SELECT AVG (LENGTH (Name)) as report FROM Readers

Выберите среди предложенных вариантов верный вариант итогового отчета при условии, что тип поля Name определен как Varchar2:

(1)
report
3
(2) сервер БД сгенерирует ошибку
(3)
report
4
(4) No rows selected
Какие из перечисленных вариантов кода являются допустимыми в запросе SQL для ORACLE
(1) select column1, column2, MIN (column3) from table1 group by column2
(2) select expr1, MIN (column1) from table1 group by expr1 having expr1<15
(3) select column1, MIN (column2) from table1 where column2 like 'Smith' group by column1, column2
(4) select SUM (column1) from table1 WHERE SUM (column1) > 10 group by column2
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number), Price (number NOT NULL)

Запрос предназначен для получения дисперсии стоимости книг, выпущенных издательствами "Adobe Press" и "New generation".

SELECT Publishing, _______________ FROM Books _______________________

Выберите из предложенных вариантов те, которые при подстановке вместо знаков подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата.

(1) первый фрагмент: STDDEV (Price) второй фрагмент: where Publishing in ('Adobe Press', 'New generation') group by Publishing
(2) первый фрагмент: VARIANCE (Price) второй фрагмент: group by Publishing where Publishing in ('Adobe Press', 'New generation')
(3) первый фрагмент: VARIANCE (Price) второй фрагмент: group by Publishing having Publishing in ('Adobe Press', 'New generation')
(4) первый фрагмент: STDDEV (Price) второй фрагмент: where Publishing in ('Adobe Press', 'New generation') group by Publishing
(5) первый фрагмент: VARIANCE (Price) второй фрагмент: where Publishing in ('Adobe Press', 'New generation') group by Publishing
Имеется модель данных:files

, где таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), City (varchar2 (300)), Mobile_phone (varchar2 (20))

Запрос имеет следующий вид:

SELECT ROUND (AVG (TO_CHAR (Day_Of_Birth, 'yyyy'))) FROM Readers GROUP BY City WHERE City = 'Moscow' or City = 'St.Petersburg'

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) групповая функция AVG не может выступать в качестве аргумента однострочной функции ROUND
(2) групповые функции могут принимать в качестве аргументов только названия столбцов и простые арифметические выражения, но не однострочные функции
(3) фраза WHERE не может присутствовать в запросе, в котором имеется фраза GROUP BY
(4) сервер не может выполнить неявное преобразование символьных значений, передаваемых в функцию AVG, в числовые значения
(5) неверный порядок следования фраз WHERE и GROUP BY
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPrice
11TurtleStreet Publishing11001
12FlowersBilly Press9003020
13Stupid foxStreet Publishing7855050
14King of the towerStreet Publishing32004030

Запрос имеет следующий вид:

SELECT MAX (AVG (DISTINCT Price)) as report FROM Books GROUP BY Publishing

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
report
40
(2)
report
35
(3)
report
30
(4)
report
40
20
(5)
report
35
20
Какие из перечисленных операций могут лежать в основе соединения строк из нескольких таблиц
(1) внешнее соединение
(2) проекция
(3) объединение
(4) не-эквисоединение
(5) декартово произведение
Имеется модель данных:files

, где таблица Books содержит данные:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

, таблица Authors имеет структуру:

Authors: Author_id (number, PK), Name (varchar2 (40)), Day_Of_Birth (date), Address (varchar2 (500))

, таблица Book_Auth имеет структуру:

Book_Auth: Book_id (number, FK), Auth_id (number, FK)

Запрос SQL имеет вид:

SELECT Title, Book_id, Name FROM Books b, Book_Auth ba, Authors a WHERE b.Book_id = ba.Book_id AND ba.Auth_id = a.Author_id

При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки:

(1) некорректный синтаксис условия соединения, для соединения строк из нескольких таблиц может применяться только оператор JOIN в сочетании с оператором USING
(2) некорректный синтаксис условия соединения, для соединения строк из нескольких таблиц может применяться только оператор JOIN в сочетании с оператором ON
(3) при выборке данных из нескольких таблиц, названию любого столбца во фразе SELECT должен предшествовать префикс, включающий название таблицы
(4) во фразе SELECT названию столбца Book_id должен предшествовать префикс, указывающий на конкретную таблицу, поскольку столбец с названием Book_id присутствует в обеих таблицах
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL), Group_id (number, FK)

, таблица Exchange_System (абонемент) имеет структуру:

Exchange_System: Group_id (number, PK), Group_title (varchar2 (100)), Add_info (varchar2 (100))

Запрос SQL предназначен для поиска абонементов (Exchange_System.Group_id), на которых нет ни одной книги.

SELECT e.Group_id FROM _________________________

Выберите из предложенных вариантов тот, который при подстановке вместо знаков подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) Books b, Exchange_System e where e.Group_id = (+) b.Group_id and Book_id is null
(2) Books b right outer join Exchange_System e on e.Group_id = b.Group_id where Book_id is null
(3) Books right outer join Exchange_System on e.Group_id = b.Group_id and Book_id is null
(4) Books b, Exchange_System e where (+) e.Group_id = b.Group_id and Book_id is null
(5) Books b JOIN Exchange_System e using b.Group_id (+) = e.Group_id and Book_id is null
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

, таблица Authors имеет структуру:

Authors: Author_id (number, PK), Name (varchar2 (40)), Day_Of_Birth (date), Address (varchar2 (500))

, таблица Book_Auth имеет структуру:

Book_Auth: Book_id (number, FK), Auth_id (number, FK) Запрос SQL предназначен для отображения идентификаторов авторов, написавших более 3 книг. SELECT Authors.Author_id from Authors JOIN Book_Auth __ Authors.Author_id =Book_Auth.Auth_id JOIN Books __ Books.Book_id = Book_Auth.Book_id ___________________________________

Какие ключевые слова следует вставить вместо знаков подчеркивания, чтобы обеспечить корректное выполнение запроса и получение требуемого результата.

(1) первый и второй фрагмент: ON третий фрагмент: and COUNT(Book_Auth.Book_id) > 3
(2) первый и второй фрагмент: USING третий фрагмент: group by Name having Count (Books.Book_id) > 3
(3) первый и второй фрагмент: ON третий фрагмент: group by Authors.Author_id having Count (Books.Book_id) > 3
(4) первый и второй фрагмент: ON третий фрагмент: where Count (Books.Book_id) > 3 group by Authors.Author_id

Таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11TurtleStreet Publishing11001
12FlowersBilly Press9003022

Таблица Exchange_System (абонемент) содержит данные:

Group_idGroup_titleAdd_info
10Educational
20Scientific

Запрос SQL имеет вид:

SELECT Title, Exchange_System.Group_id Group FROM Books b FULL OUTER ADD Exchange_System e ON b.Group_id = e.Group_id AND e.Group_id in (10, 30)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1) сервер сгенерирует ошибку
(2)
TitleGroup
Turtle10
Flowers
20
(3)
TitleGroup
Turtle10
(4)
TitleGroup
Turtle10
Flowers
Имеется модель данных:files

, где таблица Books включает информацию о книгах, некоторые из которых могут одновременно выступать в качестве отдельных изданий и включаться в сборники (Collection), и содержит данные:

Book_idTitlePublishingSizeQuantityPriceCollection
11TigersStreet Publishing300230213
12BirdsBilly Press200041013
13AnimalsStreet Publishing30000380
SELECT b.Title book, c.Title collection FROM Books c, Books b WHERE b.Collection = c.Book_id AND trunc (b.Price, -2) = trunc (c.Price, -2)

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
bookcollection
BirdsAnimals
(2)
bookcollection
AnimalsTigers
(3)
bookcollection
TigersAnimals
(4) сервер БД сгенерирует ошибку
(5)
bookcollection
TigersAnimals
BirdsPlants
В какой фразе предложения SELECT не могут присутствовать подзапросы
(1) SELECT
(2) HAVING
(3) GROUP BY
(4) FROM
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number, NOT NULL), Price (number, NOT NULL)

Запрос предназначен для отображения названия книги, обладающей минимальной стоимостью среди всех книг.

SELECT Title FROM Books WHERE Price________________

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) = "SELECT MIN (Price) from Books"
(2) = MIN (Price) from Books
(3) = (SELECT MIN (Price) from Books)
(4) = (SELECT Title, MIN (Price) from Books group by Title)
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceCollection
11TigersStreet Publishing300130013
12FlowersBilly Press200045014
13AnimalsStreet Publishing30000240
14PlantsBilly Press11001780

Запрос SQL имеет следующий вид:

SELECT Price, Price - (select min (Price) from Books) Price_dif From Books Where Publishing like 'Str%'

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
PricePrice_dif
30060
2400
(2)
PricePrice_dif
30060
450210
2400
780540
(3) строки не выбраны
(4) сервер БД сгенерирует ошибку
Имеется модель данных:files

, где таблица Books содержит данные:

Book_idTitlePublishingSizeQuantityPriceGroup_id
11General PsychologyStreet Publishing1100130020
12FlowersBilly Press9003020010

Запрос SQL имеет вид:

SELECT Title as "Book title" FROM Books b WHERE Price >= (select Price from Books b where b.Size >=900)

При попытке выполнения запроса сервер БД генерирует ошибку. Укажите правильную причину возникновения ошибки:

(1) названиям столбцов во фразе SELECT и WHERE должен предшествовать префикс "b"
(2) подзапрос должен заключаться в двойные кавычки, а не в скобки
(3) в подзапросах не допускается использование псевдонимов таблиц
(4) подзапрос возвращает несколько строк, тогда как оператор сравнения >= может применяться только для однострочных подзапросов
Имеется модель данных:files

, где таблица Books имеет структуру:

Books: Book_id (number, PK), Title (varchar2 (50)), Publishing (varchar2 (40)), Size (number), Quantity (number NOT NULL), Price (number, NOT NULL), Group_id (number, FK)

Запрос предназначен для отображения названий книг, численность экземпляров которых (Quantity) превышает численность экземпляров хотя бы одной книги, изданной в издательстве (Publishing) "Happy Weekend".

SELECT Title FROM Books WHERE Quantity ______ (select Quantity from Books where Publishing = 'Happy Weekend')

Укажите операторы сравнения, которые при подстановке вместо знака подчеркивания обеспечивают корректное выполнение запроса и получение требуемого результата:

(1) >
(2) > any
(3) > all
(4) > in list
(5) > in set
Имеется модель данных:files

, где таблица Books включает информацию о книгах, некоторые из которых могут одновременно выступать в качестве отдельных изданий и включаться в сборники (Collection), и содержит данные:

Book_idTitlePublishingSizeQuantityPriceCollection
11TigersStreet Publishing300130213
12BirdsBilly Press200041013
13AnimalsStreet Publishing30000380

Запрос SQL имеет вид:

SELECT Title name FROM Books b WHERE NOT EXISTS (SELECT * FROM Books c WHERE b.Collection = c.Book_id and c.Title = 'Animals')

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
Animals
(2) сервер БД сгенерирует ошибку
(3) строки не выбраны
(4)
name
Tigers
Birds
Имеется модель данных:files

, где таблица Readers содержит данные:

Reader_idNameDay_Of_BirthCommentsCityMobile_tel
11Tom16.09.1981Moscow
12Alex17.12.1989Serpukhov
13Tom16.09.1981Serpukhov
14Alex17.12.1989Serpukhov

Запрос SQL имеет вид:

SELECT Name FROM Readers r WHERE Name, Day_Of_Birth in (SELECT Name, Day_Of_Birth FROM Readers WHERE City = 'Serpukhov') AND City <> 'Serpukhov'

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
Tom
(2) сервер БД сгенерирует ошибку
(3) строки не выбраны
(4)
name
Tom
Alex

Оператор INTERSECTION:

(1) используется для соединения строк из нескольких таблиц
(2) может применяться только для таблиц с одинаковой структурой
(3) не существует
(4) является бинарным

Таблица Readers содержит данные:

Reader_idNameDay_Of_BirthCommentsCityMobile_tel
11Tom16.09.1981Moscow
12Alex17.12.1989Serpukhov

Таблица Readers1 содержит данные:

Reader_idNameDay_Of_BirthCommentsCityMobile_tel
12Alex01.03.1982St.Peterburg
13Tim12.12.1985Serpukhov

Запрос SQL имеет вид:

select substr (Name,1,1) name from Readers minus select substr (Name,1,1) name from Readers1

Выберите среди предложенных вариантов верный вариант итогового отчета:

(1)
name
T
A
(2)
name
T
(3) строки не выбраны
(4) сервер БД сгенерирует ошибку

Таблица Readers имеет структуру:

Readers: Reader_id (number, PK), Name (varchar2 (20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2 (300)), Mobile_phone (varchar2 (20))

Таблица Workers имеет структуру:

Workers: Worker_id (number, PK), Worker_name (varchar2 (20)), Position (number), Salary (number)

Запрос предназначен для отображения имен читателей (Name), которые в то же время являются и сотрудниками:

SELECT Name FROM Readers r _________ (SELECT Worker_name FROM Workers where Worker_name = r.Name)

Выберите из предложенных вариантов тот, который при подстановке вместо знака подчеркивания обеспечивает корректное выполнение запроса и получение требуемого результата.

(1) INTERSECTION
(2) INTERSECT
(3) EXCEPTION
(4) EXCEPT
(5) WHERE EXISTS
Фраза ORDER BY -
(1) используется для организации сортировки строк итогового отчета
(2) применяется для задания условий отбора строк
(3) не может включать псевдонимы столбцов
(4) может включать названия и псевдонимы столбцов
(5) применяется для исключения дубликатов из итоговой выборки