Главная / SQL (Oracle): Основы / Имеется модель данных:[картинка] , где таблица Readers имеет структуру: Readers: Reader_id (number, PK), Name (varchar2(20)), Day_Of_Birth (date), Comments (varchar2 (100)), Address (varchar2(300)), Mobile_phone (varchar2(20)) Запрос, предназначенный для

Имеется модель данных: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":

вопрос

Правильный ответ:

для записи дат должны быть использованы двойные кавычки
для сравнения значений типа date не может применяться операция сравнения between and
в условии WHERE происходит сравнение данных типа DATE (Day_Of_Birth) со строковыми константами, и при этом не выполняется явного преобразования типов данных, что недопустимо
для указания даты должен использоваться формат DD.MM.YYYY
неверный синтаксис оператора BETWEEN … AND
в первом условии (перед оператором NOT NULL) пропущено слово IS
Сложность вопроса
87
Сложность курса: SQL (Oracle): Основы
67
Оценить вопрос
Очень сложно
Сложно
Средне
Легко
Очень легко
Комментарии:
Аноним
Зачёт в студне отлично. Лечу в бар отмечать халяву с тестами интуит
21 апр 2016
Аноним
Если бы не эти ответы - я бы не смог решить c этими тестами intuit.
20 окт 2015
Оставить комментарий
Другие ответы на вопросы из темы базы данных интуит.