Введение в SELECT в MySQL
В этой теме мы собираемся узнать о SELECT в MySQL и, в основном, о DQL, который называется «Data Query Language». Это срабатывает, когда мы пытаемся извлечь записи из базы данных, и начинается с команды «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 | Mumbai | 10000 | |
1002 | Virat | Коли | 8752877855 | Дели | 60000 | |
1003 | Сэчин | Тендулкар | 9867868678 | Mumbai | 15000 | |
1004 | Virendra | Shewag | 9087788988 | Дели | 20000 |
Мы собираемся увидеть некоторые базовые запросы SELECT, использующие некоторые пункты для базового понимания того, как работает эта команда.
Пример № 1
SELECT * FROM customer;
(Это приведет к извлечению всех записей со всеми атрибутами из таблицы.)
Выход:
CUST_ID | Имя | Фамилия | контакт | Эл. адрес | город | Количество |
1001 | Рохит | Шарма | 9876736587 | Mumbai | 10000 | |
1002 | Virat | Коли | 8752877855 | Дели | 60000 | |
1003 | Сэчин | Тендулкар | 9867868678 | Mumbai | 15000 | |
1004 | Virendra | Shewag | 9087788988 | Дели | 20000 |
Пример № 2
SELECT cust_id, first_name, last_name, email, city
FROM customer;
(Это извлечет указанные столбцы из таблицы, которые передаются через запрос)
Выход:
CUST_ID | Имя | Фамилия | Эл. адрес | город |
1001 | Рохит | Шарма | Mumbai | |
1002 | Virat | Коли | Дели | |
1003 | Сэчин | Тендулкар | Mumbai | |
1004 | Virendra | Shewag | Дели |
Пример № 3
SELECT cust_id, first_name, last_name, email, city FROM customer
WHERE city = 'Delhi';
(Команда WHERE получит только те записи, где городом будет «Дели»)
Выход:
CUST_ID | Имя | Фамилия | Эл. адрес | город |
1002 | Virat | Коли | Дели | |
1004 | Virendra | Shewag | Дели |
Пример № 4
SELECT cust_id, first_name, last_name, city, amount FROM customer
WHERE amount BETWEEN 5000 AND 25000;
(Предложение BETWEEN будет возвращать записи, которые удовлетворяют заданному диапазону условий, переданных в запросе)
Выход:
CUST_ID | Имя | Фамилия | город | Количество |
1001 | Рохит | Шарма | Mumbai | 10000 |
1003 | Сэчин | Тендулкар | Mumbai | 15000 |
1004 | Virendra | Shewag | Дели | 20000 |
Пример № 5
SELECT * FROM customer
ORDER BY amount DESC;
(Используется для сортировки как числовых, так и строковых значений в порядке возрастания или убывания. Но по умолчанию сортировка выполняется в порядке возрастания. Если мы хотим в порядке убывания, нам нужно указать его после использования предложения ORDER BY)
Выход:
CUST_ID | Имя | Фамилия | контакт | Эл. адрес | город | Количество |
1002 | Virat | Коли | 8752877855 | Дели | 60000 | |
1004 | Virendra | Shewag | 9087788988 | Дели | 20000 | |
1003 | Сэчин | Тендулкар | 9867868678 | Mumbai | 15000 | |
1001 | Рохит | Шарма | 9876736587 | Mumbai | 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: Используется для сортировки числовых и строковых значений в порядке возрастания или убывания. Но по умолчанию сортируется по возрастанию. Если мы хотим спуститься, мы должны указать это после использования предложения ORDER BY.
SELECT first_name FROM student
ORDER BY marks desc;
6. LIMIT: используется для указания количества записей, которое мы хотим после выполнения запроса. Если мы хотим, чтобы 5 лучших учеников в классе, после сортировки результатов, мы можем использовать этот LIMIT, указав 5. Так что он будет выбирать только 5 лучших записей.
SELECT first_name FROM student
ORDER BY marks desc
LIMIT 5;
(** ORDER BY используется здесь для сортировки значений в порядке убывания)
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_» - 2-е от последней буквы будет A
SELECT first_name FROM table
WHERE first_name LIKE 'A%';
13. SUBSTRING: Используется для выбора конкретного символа из строки путем указания позиции.
SELECT SUBSTRING(customer_name, 1, 5) FROM customer_table;
(будет извлекать символ с 1-й по 5-ю позицию строки)
14. INSTR: возвращает позицию строки в другой строке.
SELECT INSTR('independence', 'pen');
(он найдет позицию «ручка» в слове «независимость»)
15. GROUP BY: используется для разделения записей на основе определенных условий.
SELECT employee_id FROM employee GROUP BY department HAVING salary > 100000;
(Здесь сгруппированы по отдельным сотрудникам на основе их отдела и чья зарплата более 100к.
Условие всегда идет с оператором HAVING в предложении GROUP BY.)
Агрегатные функции
Ниже приведена другая агрегатная функция:
1. СУММА: вычисляет сумму значений.
SELECT SUM(salary) FROM employee;
2. AVG: вычисляет средний набор значений.
SELECT AVG(salary) FROM employee;
3. MIN: получает минимальное значение в наборе значений.
SELECT MIN(salary) FROM employee;
4. МАКС. Получает максимальное значение в наборе значений.
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. RIGHT JOIN: возвращает все записи из правой таблицы и сопоставленные записи из левой таблицы.
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 с предложениями, агрегатными функциями и объединениями. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -
- Подстановочные знаки в MySQL
- Что такое схема MySQL?
- Как подключить базу данных к MySQL?
- MySQL Queries
- ВСТАВИТЬ в Oracle | Примеры
- Примеры DISTINCT в Oracle