Требуется сформулировать запрос “Найти общее число книг, изданных в 2002 г. издательствами, которые когда-либо издавали книги Дейта”. Какие из приведенных ниже формулировок являются правильными?
(Ответ считается верным, если отмечены все правильные варианты ответов.)
Варианты ответа
SELECT COUNT (BOOKS.ISBN)FROM BOOKS, PUBLISHERSWHERE BOOKS.PUB_ID = PUBLISHERS.PUB_ID AND EXTRACT (YEAR FROM BOOKS.DATE_OF_PUB) = 2002 AND PUBLISHERS.PUB_ID IN (SELECT PUB_ID FROM AUTHORS, AUTHORS-BOOKS, BOOKS, PUBLISHERS WHERE AUTHORS.AUTHOR_NAME = ‘Chris Date’ AND AUTHORS.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS.ISBN AND BOOKS.PUB_ID = PUBLISHERS.PUB_ID);(Верный ответ)
SELECT COUNT (DISTINCT BOOKS.ISBN)FROM BOOKS, BOOKS BOOKS1, PUBLISHERS, PUBLISHERS PUBLISHERS1, AUTHORS, AUTHORS-BOOKSWHERE BOOKS.PUB_ID = PUBLISHERS.PUB_ID AND EXTRACT (YEAR FROM BOOKS.DATE_OF_PUB) = 2002 AND PUBLISHERS.PUB_ID = PUBLISHERS1.PUB_ID AND AUTHORS.AUTHOR_NAME = ‘Chris Date’ AND AUTHORS.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS1.ISBN AND BOOKS1.PUB_ID = PUBLISHERS1.PUB_ID;(Верный ответ)
SELECT COUNT (DISTINCT BOOKS.ISBN)FROM BOOKS, PUBLISHERS, AUTHORS, AUTHORS-BOOKSWHERE BOOKS.PUB_ID = PUBLISHERS.PUB_ID AND EXTRACT (YEAR FROM BOORS.DATE_OF_PUB) = 2002 AND AUTHORS.AUTHOR_NAME = ‘Chris Date’ AND AUTHORS.AUTHOR_ID = AUTHORS-BOOKS.AUTHOR_ID AND AUTHORS-BOOKS.ISBN = BOOKS.ISBN AND BOOKS.PUB_ID = PUBLISHERS.PUB_ID;