Главная /
SQL: основы /
Отношение Worker имеет схему: [картинка] Worker: Worker_id (int, PK), Worker_name, Position, Salary, Commission_pct, Branch_id (int, FK) Отношение Skills имеет схему: Skills: Skill_id (int PK), Skill_title (varchar) Отношение Worker_skill имеет схему: Wor
Отношение Worker
имеет схему:
Worker: Worker_id (int, PK), Worker_name, Position, Salary, Commission_pct, Branch_id (int, FK)
Отношение Skills
имеет схему:
Отношение Worker_skill
имеет схему:
Запрос предназначен для отображения имен сотрудников, которые обладают навыком "Java programming":
При выполнении данного запроса отбирается избыточное количество строк, т.е. имена даже тех сотрудников, которые не обладают заданным навыком. Объясните причину отклонения получаемого результата от ожидаемого результата.
вопросПравильный ответ:
если запрос содержит оператор
JOIN
, то следующий далее оператор EXISTS
игнорируется
для вставки дополнительного условия соединения вместо оператора
WHERE
следовало использовать оператор AND
в подзапросе
EXISTS
пропущено условие: ws.Skill_id = Skills.Skill_id
вместо оператора
EXISTS
в данном примере следовало использовать оператор PERSISTS
Сложность вопроса
74
Сложность курса: SQL: основы
56
Оценить вопрос
Комментарии:
Аноним
Я сотрудник деканата! Немедленно уничтожьте ответы на интуит. Умоляю
06 янв 2018
Другие ответы на вопросы из темы программирование интуит.
- # Выберите из предложенного списка вариант с правильной расстановкой приоритетов (очередности выполнения) различных групп операторов:
- # Оператор изменения структуры таблицы
- # Отношение Worker имеет схему: [Большая Картинка] Worker: Worker_id (int, PK), Worker_name (varchar), Position, Manager_id (varchar), Salary (float NOT NULL), Commission_pct (float), Branch_id (int, FK), Hire_date (timestamp) Запрос предназначен для отображения информации о среднем окладе (Salary) в отделе №10 среди сотрудников, которые подчиняются менеджеру с номером 17: SELECT Branch_id, AVG (ALL Salary) FROM Worker GROUP BY Branch_id HAVING Branch_id =10 AND Manager_id = 17 При попытке выполнить запрос сервер БД генерирует сообщение об ошибке. Укажите правильную причину возникновения ошибки при условии, что столбец Salary имеет тип данных float.
- # Отношение [Большая Картинка] Student_idStudent_nameHead_stud_idMath_scopeLang_scopeGroup_id11Tomas153.94.31012Alex284.25.010 Отношение Specialties состоит из следующих кортежей: Specialty_idSpecialty_titleSpecialty_rating11.01.15Account9.812.03.14Sales6.2 Запрос SQL имеет вид: SELECT Student_name name FROM Students WHERE NOT EXISTS (SELECT * FROM Specilaties WHERE len(Specialty_title)=len(Student_name)) UNION SELECT Specialty_title name FROM Specialties WHERE NOT EXISTS (SELECT * FROM Students WHERE len(Student_name)=len(Specialty_title)) Выберите среди предложенных вариантов верный вариант итогового отчета:
- # Отношение Worker состоит из следующих кортежей: [Большая Картинка] Worker_idWorker_nameManager_idSalaryCommission_pctBranch_idHire_date11Tom_Parker1511000.81020.05.9812Alex_Stone179000.22021.06.98 Отношение Branch состоит из следующих кортежей: Branch_idBranch_titleLocation_id10Accounting1120Research12 Запрос SQL имеет вид: SELECT Worker_name name FROM Worker WHERE NOT EXISTS (SELECT * FROM Branch WHERE left(Branch_title,1)=left(Worker_name, 1)) UNION SELECT Branch_title name FROM Branch WHERE NOT EXISTS (SELECT * FROM Worker WHERE left(Worker_name,1)=left(Branch_title,1)) Выберите среди предложенных вариантов верный вариант итогового отчета: