Вступ до SELECT в MySQL

У цій темі ми дізнаємось про SELECT в MySQL і здебільшого про DQL, що є "мовою запиту даних". Це відбувається, коли ми намагаємося отримати записи з бази даних, і це починається з команди "SELECT". Ця команда може використовуватися з багатьма пунктами SQL, а також іншими функціями для отримання потрібних записів.

Існує багато видів команд SQL, які можна класифікувати на такі:

  • DDL (мова визначення даних)
  • DML (мова маніпулювання даними)
  • DQL (мова запиту даних)
  • DCL (мова контролю даних)
  • TCL (мова контролю транзакцій)

Синтаксис:

1. Основний синтаксис команди SELECT:

SELECT * FROM table_name;

Це отримає всі записи з усіма атрибутами з таблиці.

SELECT column1, column2, …. FROM table_name;

Це отримає вказані стовпці з таблиці, які передаються через запит.

2. Ця команда SELECT може також використовуватися з командою INSERT, яка використовується для додавання записів у існуючу таблицю.

INSERT INTO table_name1 SELECT * FROM table_name2;

Тут запит отримає всі записи з table_name2 та вставить їх у table_name1.

Приклади для реалізації SELECT в MySQL

Розглянемо, що існує таблиця клієнтів із наступними атрибутами.

Cust_idІм'яПрізвищеКонтактна інформаціяЕлектронна поштаМістоСума
1001РохітШарма9876736587Мумбаї10000
1002ВіратКолі8752877855Делі60000
1003СачинТендулкар9867868678Мумбаї15000
1004ВірендраШеваг9087788988Делі20000

Ми побачимо деякі основні SELECT запити, використовуючи деякі пункти для основного розуміння того, як працює ця команда.

Приклад №1

SELECT * FROM customer;

(Це отримає всі записи з усіма атрибутами з таблиці.)

Вихід:

Cust_idІм'яПрізвищеКонтактна інформаціяЕлектронна поштаМістоСума
1001Рохітшарма9876736587Мумбаї10000
1002ВіратКолі8752877855Делі60000
1003СачинТендулкар9867868678Мумбаї15000
1004ВірендраШеваг9087788988Делі20000

Приклад №2

SELECT cust_id, first_name, last_name, email, city
FROM customer;

(Це отримає вказані стовпці з таблиці, які передаються через запит)

Вихід:

Cust_idІм'яПрізвищеЕлектронна поштаМісто
1001РохітшармаМумбаї
1002ВіратКоліДелі
1003СачинТендулкарМумбаї
1004ВірендраШевагДелі

Приклад №3

SELECT cust_id, first_name, last_name, email, city FROM customer
WHERE city = 'Delhi';

(Команда WHERE отримає лише ті записи, де місто буде "Делі")

Вихід:

Cust_idІм'яПрізвищеЕлектронна поштаМісто
1002ВіратКоліДелі
1004ВірендраШевагДелі

Приклад №4

SELECT cust_id, first_name, last_name, city, amount FROM customer
WHERE amount BETWEEN 5000 AND 25000;

(Стаття BETWEEN поверне записи, які відповідають заданому діапазону умов, переданих у запиті)

Вихід:

Cust_idІм'яПрізвищеМістоСума
1001РохітшармаМумбаї10000
1003СачинТендулкарМумбаї15000
1004ВірендраШевагДелі20000

Приклад №5

SELECT * FROM customer
ORDER BY amount DESC;

(Використовується для сортування як числових, так і рядкових значень у порядку зростання або спадання. Але за замовчуванням вони сортуються у зростаючому порядку. Якщо ми хочемо у зменшенні, то нам потрібно вказати це після використання пункту ORDER BY)

Вихід:

Cust_idІм'яПрізвищеКонтактна інформаціяЕлектронна поштаМістоСума
1002ВіратКолі8752877855Делі60000
1004ВірендраШеваг9087788988Делі20000
1003СачинТендулкар9867868678Мумбаї15000
1001Рохітшарма9876736587Мумбаї10000

Статті з командою SELECT

Інші пропозиції з командою SELECT:

1. SELECT: використовується для отримання всіх записів із таблиці.

SELECT * FROM table;

2. DISTINCT: використовується для отримання всіх унікальних значень із таблиці.

SELECT DISTINCT col_name FROM table;

3. ДЕ: Використовуються умови прощення при пошуку записів.

SELECT employee_id FROM employee
WHERE name = 'stella';

4. COUNT: використовується для отримання кількості записів у таблиці.

SELECT COUNT(*) FROM employee;

5. ЗАМОВЛЕННЯ ЗА: Використовується для сортування як числових, так і рядкових значень у порядку зростання або зменшення. Але за замовчуванням він сортує у зростаючому порядку. Якщо ми хочемо зійти, то нам потрібно вказати його після використання пункту ORDER BY.

SELECT first_name FROM student
ORDER BY marks desc;

6. ОБМЕЖЕННЯ: Це використовується для визначення кількості записів, які ми бажаємо після виконання запиту. Якщо ми хочемо, щоб п’ять найкращих учнів класу, після сортування результатів, ми можемо скористатися цим ГРОМОМ, вказавши 5. Так що він отримає лише п'ять найкращих записів.

SELECT first_name FROM student
ORDER BY marks desc
LIMIT 5;

(** ЗАМОВЛЕННЯ ВИМОГО, що використовується тут для сортування значення у порядку зменшення)

7. І: Якщо для запису задано 2 умови, і обидві виконуються, тоді цей запит отримає лише запит.

SELECT employee_id FROM employee
WHERE name = 'stella' AND city = 'Bangalore';

8. АБО: Якщо задано 2 умови, і одна з них виконана для запису, тоді цей запис буде отриманий.

SELECT employee_id FROM employee
WHERE department = 'IT' OR city = 'Bangalore';

9. НЕ: Використовується в умовах. Якщо ми вкажемо НЕ перед будь-якими умовами, буде отримано записи, які не відповідають цим умовам.

SELECT employee_id FROM employee
WHERE NOT BETWEEN 1 AND 10;

10. МІЖ: цей оператор вибирає записи в заданому діапазоні. В основному ми використовуємо це там, де хочемо вказати діапазон дат.

SELECT emp_id FROM employee
WHERE emp_id BETWEEN 1 AND 10;

SELECT * FROM employee
WHERE join_date BETWEEN '2007-01-01' AND '2008-01-01';

11. IN: Цей оператор дозволяє нам вказати кілька значень у пункті WHERE.

SELECT * FROM employee
WHERE employee_id IN (1001, 1004, 1008, 1012);

12. LIKE: Цей оператор використовується з пунктом WHERE для пошуку заданого шаблону в стовпці, що містить рядок.

  • 'A%' - рядок починається з A
  • '& A' - закінчується на A
  • '% A%' - A буде між рядком
  • '_A%' - Тут другий лист буде A
  • '% A_' - другий з останньої літери буде A

SELECT first_name FROM table
WHERE first_name LIKE 'A%';

13. ПІДТРИМКА: використовується для вибору конкретного символу з рядка, вказавши позицію.

SELECT SUBSTRING(customer_name, 1, 5) FROM customer_table;

(він отримає персонаж з 1-го по 5-е місце рядка)

14. INSTR: Це повертає позицію рядка в іншій рядку.

SELECT INSTR('independence', 'pen');

(вона знайде позицію "пера" у слові "незалежність")

15. ГРУПА ПО: Це використовується для поділу записів на основі деяких заданих умов.

SELECT employee_id FROM employee GROUP BY department HAVING salary > 100000;

(Тут групуються відокремлені працівники на базі їх відділу та зарплата яких перевищує 100 к.
Умова завжди походить із заявою HAVING у пункті GROUP BY.)

Функції сукупності

Нижче наведено різні функції сукупності:

1. SUM: Обчислює суму значень.

SELECT SUM(salary) FROM employee;

2. AVG: обчислює середній набір значень.

SELECT AVG(salary) FROM employee;

3. MIN: Отримує мінімальне значення в наборі значень.

SELECT MIN(salary) FROM employee;

4. MAX: Отримує максимальне значення у наборі значень.

SELECT MAX(salary) FROM employee;

Приєднується до SELECT в MySQL

1. INNER JOIN: Повертає записи, які мають відповідне значення в обох таблицях.

SELECT * FROM order
INNER JOIN customer
ON order.cust_id = customer.cust_id;

2. LEFT JOIN: Повертає всі записи з лівої таблиці та відповідні записи з правої таблиці.

SELECT * FROM order
LEFT JOIN customer
ON order.cust_id = customer.cust_id;

3. ПРАВО ПРИЄДНАЙТЕСЬ: Повертає всі записи з правої таблиці та відповідні записи з лівої таблиці.

SELECT * FROM order
RIGHT JOIN customer
ON order.cust_id = customer.cust_id;

4. FULL OUTER JOIN: Повертає всі записи, коли зустрічається таблиця зліва або справа.

SELECT * FROM order
FULL OUTER JOIN customer
ON order.cust_id = customer.cust_id;

Висновок - SELECT в MySQL

Ці команди та пропозиції, про які ми говорили вище, дуже корисні у сценаріях реального часу, оскільки вони надають основні поняття, як використовувати SQL-запити для отримання та маніпулювання даними в базі даних. Крім цього, під час використання попередніх та аналітичних запитів, таких як функція вікон тощо, ці пропозиції є дуже важливими.

Рекомендовані статті

Це посібник по SELECT в MySQL. Тут ми обговорюємо Приклад реалізації SELECT в MySQL із застереженнями, агрегованими функціями та приєднаннями. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. Шаблони в MySQL
  2. Що таке MySQL схема?
  3. Як підключити базу даних до MySQL?
  4. Запити MySQL
  5. ВСТАВКА в Oracle | Приклади
  6. Приклади DISTINCT в Oracle