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

Ітоги . Що ми узнали про перегляд даних у таблицях

1. Для перегляду даних, що містяться у таблицях бази даних використовують інструкцію SQL, яка має такий загальний вид:

SELECT назви_полів FROM назва_таблиці WHERE умова_відбору_записів GROUP BY порядок_групування_записів HAVING критерії_пошуку_записів ORDER BY порядок_сортування_записів LIMIT критерії_обмеження_кількості_записів

2. Перегляд усієї таблиці виконується такою інструкцією:

SELECT * FROM назва_таблиці;

3. Перегляд окремих полів:

SELECT назви_полів FROM назва_таблиці;

4. Перегляд окремих записів:

SELECT * FROM назва_таблиці

WHERE умова_відбору_записів;

5. Перегляд перших N записів:

SELECT * FROM назва__таблиці LIMIT N;

6. Перегляд окремих полів та записів:

SELECT назви_полів FROM назва_таблиці WHERE умова_відбору_записів;

7. В інструкції WHERE оператора SELECT можна вказувати декілька умов підбору записів, поєднуючи їх за допомогою логічних операцій AND або OR.

8. При перегляді записи у запиті можна сортувати. Сортування у прямому порядку виконується інструкцією:

SELECT назви полів FROM назва_таблиці

ORDER BY назва__одного_з_вибраних полів ASC;

9. Сортування у зворотньому порядку:

SELECT назви_полів FROM назва_таблиці

ORDER BY назва одного_з_вибраних полів DESC;

Лекція на тему: Оновлення та вилучення записів в субд MySql.

Крім того, що записи у базі даних треба переглядати, їх необхідно періодично змінювати (оновлювати) або навіть вилучати.

Оновлення записів у таблицях здійснюють наступною інструкцію SQL:

UPDATE назва_таблиці

SET поле1=вираз1, поле2=вираз2, . . .

WHERE умова_відбору_записів

LIMIT кількість_рядків

Конструкція SET поле1 =вираз1, поле2=вираз2, ... змінює записи у полях поле1, поле2, ... на значення виразів вираз1, вираз2, Причому, "вираз" - це може бути просто нове значення запису, або формула, за якою обчислюється нове значення. В останньому випадку значення поля замінюється на результат обчислень за цією формулою.

Конструкція WHERE умова_відбору_записів дозволяє внести зміни не в усі, а лише в окремі записи у таблиці.

Конструкція LIMIT кількість_рядків задає кількість рядків, що підлягають зміні.

Вилучення записів з таблиць виконується інструкцією

DELETE FROM назва_таблиці WHERE умова_відбору_записів LIMIT кількість_рядків

Якшо просто написати

DELETE FROM назва_таблиці;

то знищуються усі записи у таблиці (будьте обережні!).

Конструкція WHERE умова__відбору__записів дозволяє вилучити не всі, а лише окремі записи таблиці.

Конструкція LIMIT кількість рядків задає кількість рядків, що підлягають вилученню.

Оновлення записів у таблицях

У таблиці customers змініть адресу і номер телефона клієнта Іваненка (customer ID=1). Нова адреса: г. Киев ул. Хрещатик 22 кв. 33. Новий номер телефона: (044) 32 1-33-22. Команда:

mysql> UPDATE customers SET

address = "г. Киев ул. Хрещатик 22 кв. 33",

phone = "(044) 321-33-22" WHERE customerlD=1;

Відповідь сервера:

Query OK, 1 row affected (0.06 sec)

Rows matched: 1 Changed: 1 Warnings: 0 Для перевірки перегляньте вміст таблиці customers. Команда:

mysql> select * from customers;

У таблиці books збільшіть ціну всіх книг на 10% (тобто в 1,1 раза).

І. Спочатку, щоб пригадати, якими були ціни на книги, перегляньте поле price у таблиці books.

Команда: mysql> select price from books;

Відповідь сервера:

price 60.00 42.00 60.00

3 rows in set (0.06 sec) 2.

Збільшіть ціни на книги на 10%. Для цього оновіть поле price у таблиці books за допомогою наступної команди:

mysql> update books set price=price*1.1;

Відповідь сервера:

Query OK, 3 rows affected (0.11 sec) Rows matched: 3 Changed: 3 Warnings: 0

  1. Для контролю знову перегляньте поле price у таблиці books.

  2. Команда: mysql> select price from books;

Відповідь сервера має бути такою:

price

66.00 46.20 66.00

3 rows in set (0.05 sec)

Самостійно. У таблиці orders збільшіть вартість всіх замовлень на 10% (тобто в 1,1 раза). Перегляньте результат.

Для указания конкретных строк таблицы, значения полей которых должны быть изменены, в команде UPDATE можно использовать предикат, указываемый в предложении WHERE.

UPDATE UNIVERSITYI

SET RATING = 200

WHERE CITY = 'Москва';

В результате выполнения этого запроса будет изменен рейтинг только у университетов, расположенных в Москве.

Команда UPDATE позволяет изменять не только один, но и множество столбцов. Для указания конкретных столбцов, значения которых должны быть модифицированы, используется предложение SET.

Например, наименование предмета обучения 'Математика' (для него SUBJ_ID = 43) должно быть заменено на название 'Высшая математика', при этом идентификационный номер необходимо сохранить, но в соответствующие поля строки таблицы ввести новые данные об этом предмете обучения. Запрос будет выглядеть следующим образом:

UPDATE SUBJECT1

SET SUBJ_NAME = Высшая математика', HOUR = 36, SEMESTER = 1

WHERE SUBJ_ID = 43;

В предложении SET команды UPDATE можно использовать

скалярные выражения, указывающие способ изменения значений поля, в которые могут входить значения изменяемого и других полей.

UPDATE UNIVERSITYI

SET RATING = RATING*2;

Например, для увеличения в таблице STUDENTi значения поля STIPEND в два раза для студентов из Москвы можно использовать запрос

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