Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
vstup.docx
Скачиваний:
26
Добавлен:
13.03.2016
Размер:
1.28 Mб
Скачать

2. Основні оператори мови маніпулювання даними. Оператор вибірки даних (одно- і багатотабличні запити оператора select).

  • SELECT

Оператор SELECT дозволяє вибирати дані з бази. Загалом оператор SELECT виглядає так:

SELECTімена_полів

FROMімена_таблиць

WHEREумова;

Імена полів записуються через кому. Якщо потрібно вибрати всі поля, пишуть зірочку ("*"). При потребі можна уточнити з якої таблиці брати поле, додавши перед його іменем.

SELECT може видати нам рядки що повторюються. Якщо ми хочемо мати тільки унікальні значення, то можемо уникнути повторень командою DISTINCT.

SELECT DISTINCT поля FROM таблиці;

Умова дозволяє відкинути непотрібні нам значення. Загалом в умові певні поля порівнюються з певними значеннями, чи між собою. Текстові значення беруться в одинарні лапки (можна і в подвійні). Для порівняння можна користуватись такими операторами:

Оператор

Опис

Приклад

=

Рівність

surname='Іванов'

<> (можливо також != )

Нерівність

surname!='Іванов'

<, >, <=, >=

Менше, більше, менше рівно, більше рівно

age>=18

BETWEEN

Всі значення що знаходяться між даними двома включно

BETWEEN'Іванов'AND'Петров'

LIKE

Порівняння з шаблоном

surname LIKE'І%'

IN

Приймає одне з перелічених значень

faculty IN ('Кубик','Радіофак','Мехмат')

В шаблоні для LIKE можна використовувати '%' як замінник для будь-якого числа будь-яких символів, та '_' як замінник для довільного одного символа.

Також в умові можна використовувати оператори OR, AND та NOT, та дужки.

Також до запиту SELECT можна додати команду ORDER BY, що дозволяє впорядкувати результат за заданими стовпцями. Щоб сортувати в зворотньому порядку після стовпців за якими сортують пишуть DESC:

SELECT name FROM students ORDER BY name DESC;

Варто також зауважити, що ORDER BY не може стояти перед WHERE інакше будуть помилки.

Також можна задати максимальну кількість записів в результаті.

  • JOIN

З'єднання використовуються для запитів з кількох таблиць, що базуються на зв'язках між певними стовпцями таблиць.

З'єднання бувають різні. Наприклад INNER JOIN (теж саме що і JOIN), де є хоч одне співпадіння в стовпцях таблиці.

Пишуть так:

SELECTназви_стовпців

FROMперша_таблиця

INNERJOINдруга_таблиця

ONперша_таблиця.назва_стовпця=друга_таблиця.назва_стовпця

І це буде те ж саме що і

SELECTназви_стовпців

FROMперша_таблиця, друга_таблиця

WHEREперша_таблиця.назва_стовпця=друга_таблиця.назва_стовпця

LEFT JOIN працює та пишеться майже так само, але повертає таблицю, в яку входять всі записи лівої таблиці (недостаючі записи з правої заповнються NULLами).

RIGHT JOIN відповідно навпаки.

FULL JOIN повертає об'єднання результатів RIGHT та LEFT JOIN.

  • INSERT

Оператор INSERT додає до таблиці рядок. Має такий синтаксис:

INSERTINTOназва_таблиціVALUES(список_значень);

Значення мають йти в такому ж порядку, як і стопці таблиці. При необхідності можна задати конкретні стовпці, та конкретні значення:

INSERT INTO students(name) VALUES ('Іван');

Всі інші поля отримають значення за замовчуванням.

  • UPDATE

Змінює значення полів в уже існуючих записах. Синтаксис:

UPDATE назва_таблиці SET стовпець1=значення1, стовпець2=значення2, ... WHERE умова;

З цим оператором треба обережно, бо якщо забути задати умову, то зміняться всі записи таблиці.

  • DELETE

Найпростіший оператор:

DELETE FROM назва_таблиці WHERE умова;

Знову ж таки, не варто забувати, що немає команди "Відмінити".

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]