|
Программирование >> Неопределенные и пропущенные значения
Результатом этого запроса будет таблица:
В задаваемхх в предложении WHERE условиях могут использоваться операции сравнения, определяемые операторами = (равно), > (больше), < (меньше), >= (больше или равно), <- (меньше или равно), <> (не равно), а также логические операторы AND, OR И NOT. Например, запрос для получения имен и фамилий студентов, обучающихся на третьем курсе и получающих стипендию (размер стипендии больше нуля), будет вхглядеть таким образом: SELECT NAME, SURNAME FROM STUDENT WHERE KURS = 3 AND STIPEND > 0; Результат выполнения этого запроса имеет вид:
Упражнения 1. Напишите запрос для вывода идентификатора (номера) предмета обучения, его наименования, семестра, в котором он читается, и количества отводимых на этот предмет часов для всех строк таблицы SUBJECT. 2. Напишите запрос, позволяющий вывести все строки таблицы EXAMMARKS, в которых предмет обучения имеет номер (SUBJID), равный 12. 3. Напишите запрос, выбирающий все данные из таблицы STUDENT, расположив столбцы таблица: в следующем порядке: KURS, SURNAME, NAME, STIPEND. 4. Напишите запрос SELECT, который выводит наименование предмета обучения (SUB JJSIAME) и количество часов (HOUR) для каждого предмета (SUBJECT) в 4-м семестре (SEMESTER). 5. Напишите запрос, позволяющий получить из таблицы EXAMMARKS значения столбца MARK (экзаменационная оценка) для всех студентов, исключив из списка повторение одинаковтх строк. 6. Напишите запрос, который выводит список фамилий студентов, обучающихся на третьем и последующих курсах. 7. Напишите запрос, выбирающий данные о фамилии, имени и номере курса для студентов, получающих стипендию больше 140. 8. Напишите запрос, выполняющий выборку из таблицы SUBJECT названий всех предметов обучения, на которые отводится более 30 часов. 9. Напишите запрос, который выполняет вывод списка университетов, рейтинг которых превышает 300 баллов. 10. Напишите запрос к таблице STUDENT для вывода списка фамилий (SURNAME), имен (NAME)- и номера курса (KURS) всех студентов со стипендией, большей или равной 100, и живущих в Воронеже. 11. Какие данные будут получены в результате выполнения запроса? sect * FROM STUDENT WHERE (STIPEND < 100 OR NOT (BIRTHDAY >= 10/03/1980 AND STODENT ID > 1003)); 12. Какие данные будут получены в результате выполнения запроса? SELE * FROM STUDENT WHERE NOT ((BIRTHDAY = 10/03/1980 OR STIPEND > 100) AND STUDENT ID >= 1003); 2.2. Операторы IN, BETWEEN, LIKE, is NULL При задании логического условия в предложении WHERE могут быть использованы операторы IN, BETWeEN, LIKE, is NULL. Операторы IN (равен любому из списка) и NOT IN (не равен ни одному из списка) используются для сравнения проверяемого значения поля с заданнхм списком. Этот список значений указывается в скобках справа от оператора IN. 2.2. Операторы IN, BETWEEN, LIKE, is NULL 29 Построеннхй с использованием IN предикат (условие) считается истинным, если значение поля, имя которого указано слева от IN, совпадает (подразумевается точное совпадение) с одним из значений, перечисленных в списке, указанном в скобках справа от IN. Предикат, построенный с использованием NOT IN, считается истинным, если значение поля, имя которого указано слева от NOT IN, не совпадает ни с одним из значений, перечисленных в списке, указанном в скобках справа от NOT IN. Примеры Получить из таблице! EXAMMARKS сведения о студентах, имеющих экзаменационнхе оценки только 4 и 5. SELECT * FROM EXAM MARKS WHERE MARK IN 5 ) ; Получить сведения о студентах, не имеющих ни одной экзаменационной оценки, равной 4 и 5. SELECT * FROM EXAM MARKS WHERE MARK NOT IN 5 ) ; Оператор BETWEEN используется для проверки условия вхождения значения поля в заданный интервал, то есть вместо списка значений атрибута этот оператор задает границы его изменения. Например, запрос на вывод записей о предметах, на изучение которых отводится количество часов, находящееся в пределах между 30 и 40, имеет вид: SELECT * FROM SUBJECT WHERE HOUR BETWEEN 30 AND 40; Граничнхе значения, в данном случае значения 30 и 40, входят во множество значений, с которыми производится сравнение. Оператор BETWEEN может использоваться как для числовых, так и для символьных типов полей. Оператор LIKE применим только к символьным полям типа CHAR или VARCHAR (см. раздел 1.5 Типх даннхх SQL ).
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки. |