ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 02.04.2021
Просмотров: 1444
Скачиваний: 4
16
п ла в а ющ ей
точ кой
.
Е го
синта ксис
:
NUMBER
[(
т о чно ст ь
[,
м а сш т а б
])]
.
Е сли
з на ч ение
п а р а метра
т о чно ст ь
не
ука з а но
яв но
,
оно
п ола га ется
рав ным
38.
Зна ч ение
п а р а метра
м а сш т а б
п о
умолч а нию
п ред п ола га ется
рав ным
0.
Зна ч ение
п а р а метра
т о чно ст ь
может
из меняться
от
1
д о
38;
з на ч ение
п а раметра
м а сш т а б
может
из меняться
от
–
84
д о
128.
Исп ользов а ние
отрица тельных
з на ч ений
ма сшта ба
оз на ч а ет
сд в иг
д есятич ной
точ ки
в
сторону
ста р ших
раз ряд ов
.
Н а п р имер
,
оп ред еление
NUMBER
(7,
–
3)
оз на ч а ет
округление
д о
тысяч
.
Тип ы
DECIMAL
и
NUMERIC
п олностью
э кв ив а лентны
тип у
NUMBER
.
Синта ксис
:
DECIMAL
[
(
т о чно ст ь
[,
м а сш т а б
])],
DEC
[(
т о чно ст ь
[,
м а сш т а б
])],
NUMERIC
[(
т о чно ст ь
[,
м а сш т а б
])].
1.5.3.
Д ат а
и
врем я
Тип
д а нных
,
п ред на з на ч енный
д ля
п ред ста в ления
д а т ы
и
в р ем ени
,
та кже
яв ляется
неста нд а р тным
,
хотя
и
ч резв ыч а йно
п олезным
.
Поэ тому
д ля
точ ного
в ыяснения
того
,
ка кие
тип ы
д а нных
п од д ержив а ет
конкретна я
СУ Б Д
,
след ует
обра щ а ться
к
ее
д окумента ции
.
В
СУ Б Д
Oracle
имеется
тип
DATE
,
исп ользуемый
д л я
хра нения
д а ты
и
в ремени
.
Под д ержив а ются
д а ты
,
на ч ина я
от
1
янв а ря
4712
г
.
д о
н
.
э
.
и
д о
31
д ека бря
4712
г
.
При
оп ред елении
д а ты
без
уточ нения
в ремени
п о
умолч а нию
п ринима ется
в ремя
п олуноч и
.
Н а лич ие
тип а
д а нных
д л я
хр а нения
д а ты
и
в ремени
п оз в оляет
п од д ержив а ть
сп ециа льную
а рифметику
д а т
и
в ремен
.
Д оба в ление
к
п еременной
тип а
DATE
целого
ч исла
оз на ч а ет
ув елич ение
д а ты
на
соотв етств ующ ее
ч исло
д ней
,
а
в ыч ита ние
соотв етств ует
оп ред елению
более
ранней
д а ты
.
К онста нты
тип а
DATE
з а п исыв а ются
в
з а в исимости
от
форма та
,
п ринятого
в
оп ера ционной
системе
.
Н а п ример
‘
03.05.1999
’
или
‘
12/06/1989
’
,
или
‘
03-nov-1999
’
,
или
‘
03-apr-99
’
.
17
1.5.4.
Неопредел енны е
ил и
пропущ енны е
данны е
(NULL)
Д ля
обоз на ч ения
отсутств ующ их
,
п роп ущ енных
или
неиз в естных
з на ч ений
а трибута
в
SQL
исп ользуется
ключ ев ое
слов о
NULL
.
Д ов ольно
ч а сто
можно
в стретить
слов осоч ета ние
“
а т р и бут
и м еет
зна чени е
NULL
”
.
Строго
гов оря
,
NULL
не
яв ляется
з на ч ением
в
обыч ном
п онима нии
,
а
исп ользуется
именно
д ля
обоз на ч ения
того
фа кта
,
ч то
д ейств ительное
з на ч ение
а трибута
на
са мом
д еле
п роп ущ ено
или
неиз в естно
.
Э то
п рив од ит
к
ряд у
особенностей
,
ч то
след ует
уч итыв а ть
п ри
исп ользов а нии
з на ч ений
а трибутов
,
которые
могут
на ход иться
в
состоянии
NULL
.
•
В
а грегирующ их
функциях
,
п оз в оляющ их
п ол уч а ть
св од ную
информа цию
п о
множеств у
з на ч ений
а трибута
,
на п ример
,
сумма р ное
или
сред нее
з на ч ение
,
д ля
обесп еч ения
точ ности
и
од ноз на ч ности
толков а ния
р езульта тов
отсутств ующ ие
или
NULL
-
з на ч ения
а трибутов
игнорируются
.
•
У слов ные
оп ераторы
от
булев ой
д в уз на ч ной
логики
true/false
р а сширяются
д о
трехз на ч ной
логики
true/false/unknown
.
•
Все
оп ераторы
,
з а
искл юч ением
оп ера тора
конка тена ции
стр ок
“
||
”
,
в оз в ра щ а ют
п устое
з на ч ение
(
NULL
),
если
з на ч ение
любого
из
оп ер а нд ов
отсутств ует
(
имеет
“з на ч ение
NULL
”
).
•
Д ля
п ров ерки
на
п устое
з на ч ение
след ует
исп ользов а ть
оп ераторы
IS NULL
и
IS NOT NULL
(
исп ользов а ние
д л я
э того
оп ератора
срав нения
“
=
”
яв ляется
ошибкой
).
•
Функции
п реобра з ов а ния
тип ов
,
имеющ ие
NULL
в
ка ч еств е
а ргумента
,
в оз в ра щ а ют
п устое
з на ч ение
(
NULL)
.
1.6.
И спол ь з уем ы е
т ерм ины
и
обоз начения
Ключев ы е
сло в а
–
э то
исп ользуемые
в
в ыражениях
SQL
слов а
,
имеющ ие
сп ециа льное
на з на ч ение
(
на п ример
,
они
могут
обоз на ч а ть
конкретные
кома нд ы
SQL).
К люч ев ые
слов а
нельзя
исп ользов а ть
д ля
д ругих
целей
,
к
п римеру
,
в
ка ч еств е
имен
объектов
ба з ы
д а нных
.
В
книге
они
в ыд еляются
шрифтом
:
КЛЮЧЕВОЕСЛОВО
.
Ко м а нд ы
,
или
пр ед ло ж ени я
,
яв ляются
инструкциями
,
с
п омощ ью
18
которых
SQL
обращ а ется
к
ба з е
д а нных
.
К ома нд ы
состоят
из
од ной
или
более
логич еских
ч а стей
,
на з ыв а емых
п ред ложениями
.
Пред ложения
на ч ина ются
ключ ев ым
слов ом
и
состоят
из
ключ ев ых
слов
и
а р гументов
.
О бъекты
ба з ы
д а нных
,
имеющ ие
имена
(
та блицы
,
а трибуты
и
д р
.),
в
книге
та кже
в ыд еляются
особым
образ ом
:
ТАБЛИЦА
1
,
АТРИБУТ
_2
.
В
оп иса нии
синта ксиса
кома нд
SQL
оп ератор
оп ред еления
“
::=
”
раз д еляет
оп ред еляемый
э лемент
(
слев а
от
оп ератора
)
и
собств енно
его
оп ред еление
(
сп ра в а
от
оп ера тора
);
кв а д ратные
скобки
“
[ ]
”
ука з ыв а ют
нео бяза т ельны й
э лемент
синта ксич еской
констр укции
;
многоточ ие
“
...
”
ука з ыв а ет
,
ч то
в ыражение
,
п ред шеств ующ ее
ему
,
может
п ов тор яться
любое
ч исло
раз
;
фигурные
скобки
“
{ }
”
объед иняют
п ослед ов а тельность
э лементов
в
ло ги ческую
гр уппу
,
од ин
из
э лементов
котор ой
д олжно
быть
обяз а тельно
исп ользов а н
;
в ертика льна я
ч ерта
“
|
”
ука з ыв а ет
,
ч то
ч а сть
оп ред еления
,
след ующ а я
з а
э тим
симв олом
,
яв ляется
од ним
из
в оз можных
в а р иа нтов
;
в
углов ые
скобки
“
< >
”
з а ключ а ются
э лементы
,
которые
объясняются
п о
мере
того
,
ка к
в в од ятся
.
19
1.7.
Учебная
баз а
данны х
В
п рив од имых
в
п особии
п римера х
п остроения
SQL-
з а п росов
и
контрольных
уп ражнениеях
исп ользуется
ба з а
д а нных
,
состоящ а я
из
след ующ их
та блиц
.
Та блица
1.1.
STUDENT
(
Студент
)
STUDENT
_
ID
SURNAME
NAME
STIPEND
KURS
CITY
BIRTHDAY UNIV
_
ID
1
Ив а нов
Ив а н
150
1
О рел
3/12/1982
10
3
Петров
Петр
200
3
К урск
1/12/1980
10
6
Сид оров
Ва д им
150
4
Москв а
7/06/1979
22
10
К уз нецов
Б орис
0
2
Б рянск
8/12/1981
10
12
За йцев а
О льга
250
2
Л ип ецк
1/05/1981
10
265
Па в лов
А нд рей
0
3
Воронеж
5/11/1979
10
32
К отов
Па в ел
150
5
Б елгор од
NULL
14
654
Л укин
А ртем
200
3
Воронеж
1/12/1981
10
276
Петров
А нтон
200
4
NULL
5/08/1981
22
55
Б елкин
Ва д им
250
5
Воронеж
7/01/1980
10
… …
… …
… …
… …
… …
… …
… …
… …
STUDENT
_
ID
–
числовой
код
,
идентифицирующий
студента
,
SURNAME
–
фамилия
студента
,
NAME
–
имя
студента
,
STIPEND
–
стипендия
,
которую
получает
студент
,
KURS
–
курс
,
на
котором
учится
студент
,
CITY
–
город
,
в
котором
живет
студент
,
BIRTHDAY
–
дата
рождения
студента
,
UNIV
_
ID
–
числовой
код
,
идентифицирующий
университет
,
в
котором
учится
студент
.
Та блица
1.2.
LECTURER
(
Преподаватель
)
LECTURER
_
ID
SURNAME
NAME
CITY
UNIV
_
ID
24
К олесников
Б орис
Вор онеж
10
46
Н иконов
Ив а н
Вор онеж
10
74
Л агутин
Па в ел
М оскв а
22
108
Струков
Н иколай
М оскв а
22
276
Н иколаев
Виктор
Вор онеж
10
328
Сорокин
А нд рей
О рел
10
… …
… …
… …
… …
… …
LECTURER
_
ID
–
числовой
код
,
идентифицирующий
преподавателя
,
20
SURNAME
–
фамилия
преподавателя
,
NAME
–
имя
преподавателя
,
CITY
–
город
,
в
котором
живет
преподаватель
,
UNIV
_
ID
–
идентификатор
университета
,
в
котором
работает
преподаватель
.
Та блица
1.3.
SUBJECT
(
Предмет
обучения
)
SUBJ
_
ID
SUBJ
_
NAME
HOUR
SEMESTER
10
Информа тика
56
1
22
Физ ика
34
1
43
М а тематика
56
2
56
История
34
4
94
А нглийский
56
3
73
Физ культура
34
5
… …
… …
… …
… …
SUBJ
_
ID
–
идентификатор
предмета
обучения
,
SUBJ
_
NAME
–
наименование
предмета
обучения
,
HOUR
–
количество
часов
,
отводимых
на
изучение
предмета
,
SEMESTER
–
семестр
,
в
котором
изучается
данный
предмет
.
Та блица
1.4.
UNIVERSITY
(
Университеты
)
UNIV
_
ID
UNIV
_
NAME
RATING
CITY
22
М Г У
606
М оскв а
10
ВГ У
296
Воронеж
11
Н Г У
345
Н ов осибирск
32
РГ У
416
Ростов
14
Б Г У
326
Б елгор од
15
ТГ У
368
Томск
18
ВГ МА
327
Воронеж
… …
… …
… …
… …
UNIV
_
ID
–
идентификатор
университета
,
UNIV
_
NAME
–
название
университета
,
RATING
–
рейтинг
университета
,
CITY
–
город
,
в
котором
расположен
университет
.