Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Коннолли Т. -> "Базы данных. Проектирование, реализация и сопровождение. Теория и практика" -> 80

Базы данных. Проектирование, реализация и сопровождение. Теория и практика - Коннолли Т.

Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика — М.: Вильямc, 2003. — 1440 c.
ISBN 5-8459-0527-3
Скачать (прямая ссылка): bazidannihpproekt2003.djv
Предыдущая << 1 .. 74 75 76 77 78 79 < 80 > 81 82 83 84 85 86 .. 683 >> Следующая

SG14 David Ford Supervisor M 24 Mar 58 18000.00 B0U3
SA9 Mary Howe Assistant F 19-ceb 10 9000.00 B007
SG5 Susan Brand Manager F 3-Jun-40 24000.00 3003
SL41 Julie Lee Assistant F 13-Jun-65 9000.00 BuOb

Глава 5. Язык SQL: манипулирование данными

171 Пример 5.2. Выборка конкретных столбцов и всех строк

Создайте отче о заработной плате всех работников с указанием только табельного номера работника ( sta 'ifNo), его имени и фамилии, а также сведений о зарплате.

SELECT staffNo, fNaire, IName, salary FROM Staff і

В этом примере на основе таблицы Staff создается новая таблица, включающая только указанные в запросе столбцы staffNo. fName, IName и salary, причем именно в этом порядке. Результат выполнения данного запроса приведен в табл. 5.2. Обратите :інима:іиі , что строки в результирующей таблице могут оказаться неотсортированными, если не дано специальное указание. С другой стороны, в некоторых СУБД сортировка результирующей таблицы выполняется по умолчанию с учетом значений одного или нескольких столбцов (например, в базе данных Microsoft Access сортировка этой результирующей таблицы была бы выполнена по значению первччногс ключа staffNo). Способы сортировки строк в результирующей таблице рассматриваются в следующем разделе.

Таблица 5.2. Результат выполнения запроса из примера 5.2

staffNo fName IName в и у

SL21 John White 30000.00

SG37 Ann Beech 12000.00

SG14 Davir1 Ford 18000.00

SA9 Mary Howe 9000.00

SG5 Susan Brand 24000.00

SL41 Julie Lee 9000.00

----Z_ZJ

Пример 5.3. Использование ключевого слова DISTINCT

Составьте список номеров всех сдаваемых аренду объектов, осмотренных клиентами.

SELECT propertyNo "rROM Viewing;

Результат выполнения этого запроса представлен в табл. 5.3. Обратите внимание, что результат выполнения запроса содержит повторяющиеся значения, поскольку, в отличие от операции проекции реляционной алгебры (см. раздел 4.1.1), оператор SELECT не исключает повторяющихся значений при выполнении проекции по значениям одного или нескольких столбцов. Для удаления из результирующей таблицы повторяющихся строк используется ключевое слово DISTINCT. Откорректированный запрос выглядит следующим образом:

SELECT DISTINCT propertyNo FROM Viewiпег;

Результаты выполнения второго варианта запроса представлены в табл. 5,4.

172

Часть 11. Реляционная модель и языки Таблица 5.3. Результат выполнения запроса с сохранением повторяющихся значений из примера 5.3

JropertyNi

ра14 PG4 pg4 pa14

pg36_ _ _

Таблица 5.4. Результат выполнения запроса с исключением повторяющихся значений из примера 5.3

propertyNc

РА14 PG4

PG36

-—I

Пример 5.4. Вычисляемые поля

Создайте їічєті ежемесячной зарплате всего 1ерсонвла с указанием табельного номера, имени, фамилии и суммы иэрплзть

SELECT staffNo, fName, INamer salary/12 FROM Staff;

Этот запрос почти идентичен запросу из примера 5.2, за исключением того, что здесь требуется указать сумму не годовой, а ежемесячной зарплаты. В данном случае желаемый результат может быть достигнут простым делением суммы зарплаты за год на 12. Результаты выполнения запроса представлены в табл. 5.5.

Таблица 5.5. Результат выполнения запроса из примера 5.4

^taffNo fName IName со14

SL21 John White 2500.00
SG37 Ann Beech 10OO.OO
SG14 David Ford 1500.00
SA9 Mary Howe 750.00
SG5 Susan Brand 2000.00
SL41 Julie Lee 750.00

Это пример использования в запросе вычисляемого поля (иногда эти поля называют расчетными, или производными). В общем случае для создания вычисляемого поля в списке SELECT следует указать некоторое выражение языка SQL В этих

Глава 5. Язык SQL: манипулирование данными

173 выражениях могут применяться операции сложения, вычитания, умножения и деления. При построении сложных ныражений могут использоваться круглые скобки. Для получения значения вычисляеь-ого поля могут использоваться значения из нескольких столбцов таблицы, однако тип данных тех столбцов, которые входят в арифметические выражения, обязательно должен быть цифровым. В таблице, полученной в результате выполнения запроса, четвертый столбец называется со14. Обычно столбцам результирующей таблицы присваиваются имена соответствующих им столбцов исходных таблиц базы данных. Однако в данном случае это правило неприменимо, поскольку в стандарте SQL не определены правила именования производных столбцов. В одних диалектах языка SQL имена таким столбцам присваивают в соответствии с порядком их расположения в таблице (например, со14), в других диалектах у подобного столбца имя может вовсе отсутствовать или вместо него может использоваться выражение, находящееся в списке SELECT. Стандарт ISO позволяет явным образом задавать другие имена столбцов результирующей таблицы, для чего применяется конструкция AS. При использовании этой конструкции приведенный выше оператор SELECT может быть переписан следующим образом:

SELECT staffNo, fName, IName, salary/12 AS monthlySalary FROM Staff;

В этом случае четвертый столбец результирующей таблицы будет называться mouthlyS: l.'.ry, а не со14.
Предыдущая << 1 .. 74 75 76 77 78 79 < 80 > 81 82 83 84 85 86 .. 683 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100