Практическая лабораторная работа №1


  Используемые программы



жүктеу 3,23 Mb.
Pdf просмотр
бет214/407
Дата11.01.2022
өлшемі3,23 Mb.
#32311
1   ...   210   211   212   213   214   215   216   217   ...   407
ignat eva o.v. prikladnoe programmirovanie i bazy dannykh. dlia prakt

5.3. 
Используемые программы
 
Программы ‘ SQL Server Managmant Studio ‘. 
5.4. 
Теоретические сведения
 
В  SQL  имеется  единственный  оператор,  который  предназначен  для  выборки  
данных  из  базы  данных.  Оператор  относится к подмножеству 
DML

Ниже приведен почти полный синтаксис оператора 
SELECT

 
SELECT 
[
DISTINCT | ALL

{* | 
<величина> [, <величина> ...]
}
 
[
INTO 
:Переменная [, :Переменная ...]] 
FROM 
[, ...] 
[
WHERE 
<условие поиска>] 
[
GROUP BY 
Колонка [, Колонка ...]] 
[
HAVING 
<условие поиска>] 
[
UNION 
[
ALL
]
[
ORDER BY 
<список сортировки>]; 
 
 
<величина>
 = 
{
Колонка 

:Переменная 

<константа> 

<выражение> 

<функция> 

udf 
(
[<величина> [, <величина> ...]]
)
 
| NULL | USER} 
[
AS 
Псевдоним] 
 
<константа> =
 Число 

'Строка' 
 
<выражение>
 = SQL выражение, возвращающее единичное значение 
 
<функция> = 
COUNT (* | 
[
ALL
] <величина> | 
DISTINCT 
<величина>
)
 
| SUM (
[
ALL
] <величина> 
| DISTINCT 
<величина>
)
 
|
 
AVG
 
([
ALL
] <величина> 
| DISTINCT
 <величина>
)
 
|
 
MAX
 
(
[
ALL
] <величина> 
| DISTINCT 
<величина>
)
 
| MIN (
[
ALL
] <величина> 
| DISTINCT 
<величина>
)
 
| CAST(
<величина> 
AS 
<тип данных>
)
 
|
 
UPPER (
<величина>
)
 
| GEN_ID (
Имя_Генератора, <величина>
)
 
 
 =
 
{
 

table 

view 

procedure[
(
<величина> [, <величина> ...]
)
]
}
 


 
 
105 
[Псевдоним] 
 
 =
   
JOIN 
 
ON 
<условие поиска> 
| (

)
 
 
 = [
INNER

| {LEFT | RIGHT | FULL } 
[
OUTER

 
<условие поиска> = 
<величина> <оператор сравнения> 
{
<величина> 
| (

)}
 

<величина> [
NOT

BETWEEN 
<величина> 
AND 
<величина> 

<величина> [
NOT

LIKE 
<величина> 

<величина> [
NOT

IN
 
(
<величина> [, <величина> ...] 


)
 

<величина> 
IS 
[
NOT

NULL
 

<величина> 
{
>= 

<=

<величина> 

<величина> [
NOT

{




>

<величина> 
| {ALL | SOME | ANY} (

)
 
| EXISTS (

)
 
| SINGULAR (

)
 

<величина> [
NOT

CONTAINING 
<величина> 

<величина> [
NOT

STARTING 
[
WITH
] <величина> 
| (
<условие поиска>
)
 
| NOT 
<условие поиска> 

<условие поиска>
OR 
<условие поиска> 

<условие поиска>
AND 
<условие поиска> 
 
<оператор сравнения> = 
{






<= 

>= 

!< 

!> 

<> 

!=
}
 
 

 = оператор SELECT, выбирающий одну колонку и возвращающий 
ровно одно значение 
 

 = оператор SELECT, выбирающий одну колонку, возвращающий ноль 
или много значений 
 

 = оператор SELECT,  выбирающий несколько величин  и 
возвращающий ноль или много значений 
 
<список сортировки> = 
{
Колонка 

Номер
}
 
[
ASC | DESC

[, <список сортировки> ...] 
 
Некоторые параметры, входящие в этот оператор, описаны в табл. 5.1. 
 
 
 
 
 


 
 
106 
Таблица 5.1 
Описание параметров оператора SELECT 
Параметр 
Описание 
DISTINCT | ALL
 
DISTINCT 
– предотвращает дублирование данных, которые 
будут извлечены. 
ALL 
(по  умолчанию)  –  приведет  к  извлечению всех 
данных 
{* | 
<величина> [, 
<величина> ...]
}
 
Звездочка (
*
) означает, что надо извлекать все колонки из 
указанных таблиц. 
<величина> [, <величина> ...] – извлекает  список  указанных  
колонок,  переменных или выражений 
INTO 
:Переменная [, 
:Переменная ...] 
Используется только в триггерах и хранимых  процедурах  для  
операторов  SELECT, возвращающих не более одной строки. 
Указывается  список  переменных,  в  которые извлекаются 
величины 
FROM 
[, 
...] 
Указывает  список  таблиц,  просмотров  и хранимых  
процедур,  из  которых  извлекаются данные. Список может 
включать соединения  и  соединения  могут  быть  
вложенными 
table 
Имя  существующей  в  базе  данных  таблицы 
view 
Имя существующего базе данных просмотра 
procedure 
Имя существующей хранимой процедуры, предназначенной 
для использования в операторе SELECT 
Псевдоним 
Короткое  альтернативное  имя  для  таблицы, просмотра или 
колонки. После описания в , псевдоним может 
использоваться  для  ссылок  на  таблицу  или просмотр 
join_type 
Задает тип соединения, которое может быть внутренним или 
внешним 
WHERE 
<условие 
поиска> 
Указывает  условие,  которое  ограничивает количество 
извлекаемых строк 
GROUP BY 
Колонка [, 
Колонка ...] 
Разбивает   результат   запроса   на   группы, содержащие   все   
строки   с   идентичными значениями указанными в списке 
колонок 
HAVING
 
<условие поиска> 
Использует совместно с GROUP BY. Задает  условие,  которое  
ограничивает  количество возвращаемых групп 
UNION 
[
ALL

Объединяет результаты нескольких запросов.  Все  запросы  
должны  извлекать  одинаковое количество столбцов, тип 
данных каждого  столба  первого  запроса  должен совпадать  с  
типом  данных  других  запросов, имена столбцов в разных 
запросах мо- гут  отличаться.  Необязательный  параметр ALL 
указывает, что надо выводить одинаковые строки 
ORDER BY
 
<список сортировки> 
Указывает колонки, по которым будет производиться 
сортировка извлекаемых строк. Можно указывать либо имена 
коло- нок, либо их порядковые номера в списке извлекаемых  
колонок.  Если  указать  ASC, то строки будут выдаваться в 
порядке возрастания значений сортируемых полей, если DESC 
– в порядке убывания значений 
 
Как видно из синтаксиса оператора 
SELECT,
 обязательными являются только  
предложение  
SELECT 
с  перечнем  выдаваемых  колонок  и  предложение 
FROM

 
Пример простейшего оператора
 
SELECT

-- Выдать перечень всех служащих:
 
SELECT * FROM 
Employee; 


 
 
107 
 
Ниже  приведено  несколько  упрощенных  вариантов  синтаксиса  оператора 
SELECT
, помогающих научиться составлять простые запросы. 
Упрощенный синтаксис внутреннего соединения
 (стандарт SQL-92): 
SELECT 
Колонка [, Колонка ...] 
| *
 
FROM 
[
INNER

JOIN 

 
[
ON 
<условие поиска>]
 
[
WHERE 
<условие поиска>];
 
 
Упрощенный синтаксис внешнего соединения

SELECT 
Колонка [, Колонка ...] 
| *
 
FROM 

 
{LEFT | RIGHT | FULL} 
[
OUTER

JOIN
 

 
[
ON 
<условие поиска>]
 
[
WHERE 
<условие поиска>];
 
 
Упрощенный синтаксис использования подзапроса

SELECT 
[
DISTINCT
] Колонка [, Колонка ...]
 
FROM 
[, ...]
 
WHERE
 
{
expression 
{
[
NOT

IN | 
<оператор сравнения>
}
 

[
NOT

EXISTS
 
}
 
(SELECT 
[
DISTINCT
] Колонка [, Колонка ...]
 
FROM 
[, ...]
 
WHERE 
<условие поиска>
 
)
;
 
 
5.5. 
Задание
 
Практическую работу следует выполнять в следующем порядке: 
1.    Изучить  синтаксис  оператора 
SELECT
  и  примеры  запросов  к  учебной  базе 
данных ‘
University.mdf
’. 
2. Выполнить в окне ‘SQL Editor’ 
27
 запроса к базе данных, согласно приведенным 
в практической работе образцам выполнения запросов и сохранять каждый под именами 

Lab5-k.sql’
,  где  k  –  номер  запроса  по  порядку,  в  своей  рабочей  папке.  Каждый  запрос 
должен иметь комментарии с описанием, а файл в целом должен иметь комментарии со 
сведениями об авторе и дате создания. 
 
5.6. 
Ход работы
 
 
Примечание.
 У вас должны быть перед выполнением этой практической работы 
созданы все таблицы базы данных университета, созданы ключи, а также заполнены 
данными.  
 
Выполнение sql-запросов 
Для  выполнения  запросов 
SELECT
  в  программе  ‘SQL  Server  Managmant  Studio’ 
необходимо выполнить следующие действия: 
1.    Подключиться    к    базе    данных    и    выполнить    команду    ‘
Создать запрос
’. В 
результате откроется окно ‘
Конструктора запросов
’ (рис. 1). 


 
 
108 
TP                   PT 
 
 
Рис. 1. Окно выполнения запросов
 
 
2.  Ввести текст запроса согласно рис.1. 
3.  Нажать на панели инструментов кнопку 
 [
Выполнить
] . 
4.  Если запрос правильный, то в результате произойдет его выполнение и 
результат будет отображен на вкладке ‘
Результаты
’ (рис. 2). 
 
 
Рис. 2. Окно с результатом выполнения запроса
 
 
5.  Количество извлеченных в результате выполнения запроса строк отображается  
над  сеткой  с  данными  справа.  На  рис.2  там  содержится  строка ‘3  строк’.  В  данном  
примере  извлечено  столько  строк,  сколько требуется, чтобы заполнить сетку (в ней 
помещается только 3 строки) * . 
6.  Чтобы узнать, сколько всего строк соответствуют выполненному оператору, 
надо перейти в конец отображаемого набора данных. 
 
Чтобы выполнить другой запрос, надо вернуться на вкладку ‘
Редактора
’, создать 
новый запрос и повторить те же действия. 
К тексту ранее выполнявшихся правильных запросов можно вернуться, если 
перейти  на  вкладку  ‘
История
’. 
 

жүктеу 3,23 Mb.

Достарыңызбен бөлісу:
1   ...   210   211   212   213   214   215   216   217   ...   407




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау