Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
теория2.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
650.75 Кб
Скачать

I способ

Запрос:

SELECT FIO

FROM ZAKAZCHIKI

WHERE NZAKAZCHIKA=

(

SELECT NZAKAZCHIKA

FROM ZAKAZY

WHERE DataZakaza =

( SELECT min(DataZakaza)

FROM ZAKAZY

)

)

Результат всего запроса:

FIO

Родин Н.Р.

Как был получен этот результат:

а)

SELECT FIO

FROM ZAKAZCHIKI

WHERE NZAKAZCHIKA=

(

SELECT NZAKAZCHIKA

FROM ZAKAZY

WHERE DataZakaza = “29.09.2008”

)

б)

SELECT FIO

FROM ZAKAZCHIKI

WHERE NZAKAZCHIKA=2

II способ

SELECT FIO

FROM ZAKAZY, ZAKAZCHIKI

WHERE (ZAKAZY.NZAKAZCHIKA= ZAKAZCHIKI.NZAKAZCHIKA) and

(DataZakaza =

( SELECT min(DataZakaza)

FROM ZAKAZY

)

)

Операция in

Задание: вывести сведения о заказах NN2,5,7

I способ

SELECT *

FROM ZAKAZY

WHERE (Nzakaza=2) or (Nzakaza=5) or (Nzakaza=7)

II способ

SELECT *

FROM ZAKAZY

WHERE Nzakaza IN (2, 5, 7)

Результат запроса:

Nzakaza (*)

Nzakazchika

Nprod

DataZakaza

Tsena

2

2

2

16.10.2008

2000

5

1

1

23.10.2008

2500

7

2

1

12.10.2008

2100

Справа от IN может находиться вложенный SELECT. В этом случае вложенный SELECT должен возвращать один столбец.

Задание: вывести сведения обо всех заказах, кроме NN2,5,7

Запрос:

SELECT *

FROM ZAKAZY

WHERE Nzakaza NOT IN (2, 5, 7)

Результат запроса:

Nzakaza (*)

Nzakazchika

Nprod

DataZakaza

Tsena

1

1

1

12.10.2008

1000

3

2

1

29.09.2008

5000

4

3

2

20.10.2008

1500

6

2

2

22.10.2008

2300

Задание: вывести номера заказчиков, которые ничего не заказывали после 21.10.2008

Запрос:

SELECT Nzakazchika

FROM zakazchiki

WHERE Nzakazchika NOT IN

(

SELECT DISTINCT Nzakazchika

FROM ZAKAZY

WHERE DataZakaza > ”21.10.2008”

)

Результат выполнения вложенного SELECT:

Nzakazchika

1

2

Результат всего запроса:

Nzakazchika

3

Задание: вывести ФИО заказчиков, которые ничего не заказывали после 21.10.2008

Запрос:

SELECT FIO

FROM zakazchiki

WHERE Nzakazchika NOT IN

(

SELECT Nzakazchika

FROM ZAKAZY

WHERE DataZakaza > ”21.10.2008”

)

Результат всего запроса:

FIO

Михайлова Г.С.

Структурированный язык запросов (SQL - Structured Query Language)

  • Язык определения данных (DDL - Data Definition Language)

Операторы CREATE, DROP, ALTER

  • Язык манипуляции данными (DML - Data Manipulation Language)

Операторы SELECT, INSERT, DELETE, UPDATE