Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Лабораторная работа 5. Разработка запросов на языке SQL. Часть 2




Варианты заданий

Содержание отчета

Выполнение лабораторной работы

Директивы, используемые в условиях запросов

В операторе select можно использовать директиву [ not ] in для проверки принадлежности или не принадлежности множеству, следующий оператор вернет всех студентов, за исключением обучающихся в группах 4001, 5001:

select Номер 'Группа', ФИО

from Группа, Студент

where Группа.Id = Группа and

Номер not in ('4001', '5001')

go

 

Для неточного сравнения строк используется директива [ not ] like, запрос:

select * from Студент

where ФИО like 'С%'

go

 

вернет информацию о студентах, фамилии которых начинаются с буквы С. В шаблоне, указываемом в операторе like можно использовать знак % для обозначения любой, в том числе пустой последовательности символов и знак _ для обозначения произвольного символа (символ должен присутствовать в строке). Если % или _ содержится в искомой строке, определяется символ escape, например условие like '#%%' escape '#' определяет символ #, как отменяющий действие символа %, в результате будут найдены строки, начинающиеся с данного символа.

С помощью [ ] в like можно задавать множество допустимых символов, например выборка студентов с ФИО, начинающейся с К или С:

select * from Студент

where ФИО like '[КС]%'

go

 

А с помощью ^ можноопределять не вхождение символа в шаблон, например студенты, фамилии которых начинаются с буквы С, где вторая буква не ы:

select * from Студент

where ФИО like 'С[^ы]%'

go

 

Для удобства составления запросов, производящих отбор диапазонов значений, используется директива [not] between <нижняя граница> and <верхняя граница>. Примр использования директивы иллюстрирует запрос:

select * from Группа

where Номер between '4000' and '5000'

go

 

В случае если при вставке строки в таблицу не указывалось значение какого-либо столбца, в качестве его значения подставляется специальная константа null. Константа null не соответствует нулю или пустой строке, она говорит о том, что значение является неопределенным. Как следствие, любая операция сравнения с null -значением дает неопределенный результат, для поиска в таблице значений отличных или совпадающих с null используется директива is [ not ]null.

По аналогии с примерами, приведенными в п. 1 реализовать запросы а).. в), указанные в варианте задания. Самостоятельно предложить и реализовать запросы, демонстрирующие использование каждой из директив, приведенных в п. 2.

Содержание отчета:

— текст запросов на SQL;

— наборы данных, возвращаемые запросами.

Варианты заданий приведены в ПРИЛОЖЕНИИ.





Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 423; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.