Требуется сформулировать запрос “Найти ISBN всех книг, написанных не Дейтом, названия которых совпадают с названием какой-либо книги Дейта”. Какие из приведенных ниже формулировок являются правильными?
(Ответ считается верным, если отмечены все правильные варианты ответов.)
Варианты ответа
SELECT ISBNFROM BOOKSWHERE ISBN IN (SELECT BOOKS.ISBN FROM AUTHORS, AUTHORS-BOOKS, BOOKS WHERE AUTHORS.AUTHOR_NAME <> ‘Chris Date’ AND AUTHOR.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS.ISBN) AND TITLE IN (SELECT BOOKS.TITLE FROM AUTHORS, AUTHORS-BOOKS, BOOKS WHERE AUTHORS.AUTHOR_NAME = ‘Chris Date’ AND AUTHOR.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS.ISBN);(Верный ответ)
SELECT DISTINCT BOOKS.ISBNFROM AUTHORS, AUTHORS AUTHORS1, BOOKS, BOOKS BOOKS1, AUTHORS-BOOKS, AUTHORS-BOOKS1WHERE AUTHORS.AUTHOR_NAME <> ‘Chris Date’ AND AUTHORS1.AUTHOR_NAME = ‘Chris Date’ AND AUTHOR.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHOR1.AUTHOR_ID = AUTHORS-BOOKS1.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS.ISBN AND AUTHORS-BOOKS1.ISBN = BOOKS1.ISBN AND BOOKS.TITLE = BOOKS1.TITLE;(Верный ответ)
SELECT DISTINCT BOOKS.ISBNFROM AUTHORS, AUTHORS-BOOKS, BOOKSWHERE AUTHORS.AUTHOR_NAME <> ‘Chris Date’ AND AUTHOR.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS.ISBN AND BOOKS.TITLE = SOME (SELECT BOOKS.TITLE FROM AUTHORS, AUTHORS-BOOKS, BOOKS WHERE AUTHORS.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS.ISBN AND AUTHORS.AUTHOR_NAME = ‘Chris Date’);(Верный ответ)