MySQL Інструкція SELECT із прикладами

У чому полягає запит SELECT MySQL?

SELECT QUERY використовується для отримання даних із MySQL бази даних. Бази даних зберігають дані для подальшого пошуку. Мета MySQL Виберіть, щоб повернути з таблиць бази даних один або більше рядків, які відповідають заданим критеріям. Запит Select можна використовувати в мові сценаріїв, наприклад PHP, Ruby, або ви можете виконати його через командний рядок.

SELECT запит в MySQL

Синтаксис оператора SQL SELECT

Це найбільш часто використовувана команда SQL і має такий загальний синтаксис

SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)]  [HAVING condition] ORDER BY fieldName(s)

ТУТ

  • ВИБІР це ключове слово SQL, яке повідомляє базі даних, що ви хочете отримати дані.
  • [ОТРИМАТИСЯ | ВСІ] це додаткові ключові слова, які можна використовувати для точного налаштування результатів, що повертаються оператором SQL SELECT. Якщо нічого не вказано, ALL вважається типовим.
  • {*| [вираз поля [AS newName]} має бути вказано принаймні одну частину, «*» вибрано всі поля з указаної назви таблиці, fieldExpression виконує деякі обчислення щодо вказаних полів, наприклад додавання чисел або поєднання двох рядкових полів в одне.
  • З tableName є обов’язковим і має містити принаймні одну таблицю, кілька таблиць мають бути розділені комами або об’єднані за допомогою ключового слова JOIN.
  • ДЕ умова є необов’язковою, її можна використовувати для визначення критеріїв у наборі результатів, який повертає запит.
  • GROUP BY використовується для об’єднання записів, які мають однакові значення полів.
  • ВІД умова використовується для визначення критеріїв під час роботи з використанням ключового слова GROUP BY.
  • СОРТУВАТИ ЗА використовується для визначення порядку сортування набору результатів.

*

Символ зірочки використовується для виділення всіх стовпців у таблиці. Приклад простого оператора SELECT виглядає так, як показано нижче.

SELECT * FROM `members`;

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

Практичні приклади

Натисніть, щоб завантажити Myflix DB використовується для практичних прикладів.

Ви можете навчитися імпортувати файл .sql у MySQL верстак

Приклади виконано на наступних двох таблицях

Таблиця 1: членів таблиця

членський_ номер повні_імена пол дата народження фізична адреса Поштова адреса контактний номер e-mail
1 Джанет Джонс жінка 21-07-1980 Ділянка № 4 вул Приватна сумка 0759 253 542 janetjones@yagoo.cm
2 Джанет Сміт Джонс жінка 23-06-1980 Мелроуз 123 NULL NULL jj@fstreet.com
3 Роберт Філ чоловік 12-07-1989 3-я вулиця 34 NULL 12345 rm@tstreet.com
4 Глорія Вільямс жінка 14-02-1984 2-а вулиця 23 NULL NULL NULL

Таблиця 2: кіно таблиця

movie_id назву директор year_released category_id
1 Пірати Карибського моря 4 Роб Маршалл 2011 1
2 Забути Сару Маршал Ніколас Столлер 2008 2
3 X-Men NULL 2008 NULL
4 Кодове ім'я Чорний Едгар Джимз 2010 NULL
5 Татові маленькі дівчатка NULL 2007 8
6 Ангели та демони NULL 2007 6
7 Кодекс Давінчі NULL 2007 6
9 Honey місячники Джон Шульц 2005 8
16 67% винний NULL 2012 NULL

Отримання списку учасників

Припустімо, що ми хочемо отримати список усіх зареєстрованих членів бібліотеки з нашої бази даних, ми скористаємося для цього сценарієм, показаним нижче.

SELECT * FROM `members`;

Виконання наведеного вище сценарію в MySQL workbench дає такі результати.

членський_ номер повні_імена пол дата народження фізична адреса Поштова адреса контактний номер e-mail
1 Джанет Джонс жінка 21-07-1980 Ділянка № 4 вул Приватна сумка 0759 253 542 janetjones@yagoo.cm
2 Джанет Сміт Джонс жінка 23-06-1980 Мелроуз 123 NULL NULL jj@fstreet.com
3 Роберт Філ чоловік 12-07-1989 3-я вулиця 34 NULL 12345 rm@tstreet.com
4 Глорія Вільямс жінка 14-02-1984 2-а вулиця 23 NULL NULL NULL

Наш наведений вище запит повернув усі рядки та стовпці з таблиці members.

Скажімо, ми зацікавлені лише в тому, щоб отримати лише поля full_names, gender, physical_address та email. Наступний сценарій допоможе нам досягти цього.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

Виконання наведеного вище сценарію в MySQL workbench дає такі результати.

повні_імена пол фізична адреса e-mail
Джанет Джонс жінка Ділянка № 4 вул janetjones@yagoo.cm
Джанет Сміт Джонс жінка Мелроуз 123 jj@fstreet.com
Роберт Філ чоловік 3-я вулиця 34 rm@tstreet.com
Глорія Вільямс жінка 2-а вулиця 23 NULL

Отримання списку фільмів

Пам’ятайте, що в нашому вище обговоренні ми згадували вирази, які використовувалися в операторах SELECT. Припустімо, ми хочемо отримати список фільмів із нашої бази даних. Ми хочемо мати назву фільму та ім’я режисера в одному полі. Ім'я режисера має бути в дужках. Ми також хочемо отримати рік виходу фільму. Наступний сценарій допоможе нам це зробити.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

ТУТ

  • Конкат () MySQL використовується функція об’єднання значень стовпців.
  • Рядок «Concat (`title`, ' (', `director`, ')') отримує назву, додає початкову дужку, за якою слідує ім’я режисера, а потім додає закриваючу дужку.

У функції Concat () частини рядка відокремлюються комами.

Виконання наведеного вище сценарію в MySQL workbench створює наступний набір результатів.

Concat(`title`, ' (', `director`, ')') year_released
Пірати Карибського моря 4 (Роб Маршалл) 2011
Забути Сару Маршал (Ніколас Столлер) 2008
NULL 2008
Кодове ім'я Блек (Едгар Джимз) 2010
NULL 2007
NULL 2007
NULL 2007
Honey місячники (Джон Шульц) 2005
NULL 2012

Імена полів псевдонімів

Наведений вище приклад повернув код конкатенації як назву поля для наших результатів. Припустімо, ми хочемо використовувати більш описове ім’я поля в нашому наборі результатів. Для цього ми використаємо псевдонім стовпця. Нижче наведено базовий синтаксис псевдоніма стовпця

SELECT `column_name|value|expression` [AS] `alias_name`;

ТУТ

  • “SELECT ` column_name|value|expression `” це звичайний оператор SELECT, який може бути назвою стовпця, значенням або виразом.
  • «[AS]» це необов’язкове ключове слово перед псевдонімом, який позначає вираз, значення або ім’я поля, яке буде повернуто як.
  • "`alias_name`" це псевдонім, який ми хочемо повернути в нашому наборі результатів як назву поля.

Наведений вище запит із більш значущою назвою стовпця

SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;

Отримуємо наступний результат

Concat year_released
Пірати Карибського моря 4 (Роб Маршалл) 2011
Забути Сару Маршал (Ніколас Столлер) 2008
NULL 2008
Кодове ім'я Блек (Едгар Джимз) 2010
NULL 2007
NULL 2007
NULL 2007
Honey місячники (Джон Шульц) 2005
NULL 2012

Отримання списку учасників із зазначенням року народження

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

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

ТУТ

  • “LEFT(`дата_народження`;4)” Рядкова функція LEFT приймає дату народження як параметр і повертає лише 4 символи зліва.
  • “ЯК `рік_народження`” є псевдонім стовпця які буде повернено в наших результатах. Зверніть увагу на Ключове слово AS необов’язкове, ви можете залишити його, і запит все одно працюватиме.

Виконання наведеного вище запиту в MySQL workbench проти myflixdb дає нам результати, показані нижче.

member_number повні_імена рік народження
1 Джанет Джонс 1980
2 Джанет Сміт Джонс 1980
3 Роберт Філ 1989
4 Глорія Вільямс 1984

Використання SQL MySQL Верстак

Зараз будемо використовувати MySQL workbench, щоб створити сценарій, який відображатиме всі назви полів із нашої таблиці категорій.

1. Клацніть правою кнопкою миші на таблиці категорій. Натисніть «Вибрати рядки – обмеження 1000»

2. MySQL workbench автоматично створить SQL-запит і вставить його в редактор.

3. Буде показано результати запиту

Використання SQL MySQL Верстак

Зверніть увагу, що ми не самі написали оператор SELECT. MySQL workbench створив його для нас.

Навіщо використовувати команду SELECT SQL, якщо у нас є MySQL Верстак?

Тепер ви можете подумати, навіщо вивчати команду SQL SELECT для запиту даних із бази даних, якщо ви можете просто скористатися таким інструментом, як MySQL workbench, щоб отримати ті самі результати без знання мови SQL. Звичайно, це можливо, але навчитися використовувати команду SELECT дає вам більше гнучкість та контроль над вашим Оператори SQL SELECT.

MySQL верстак відноситься до категорії "Запит за прикладомІнструменти QBE. Він призначений для того, щоб швидше генерувати оператори SQL, щоб підвищити продуктивність користувача.

Вивчення команди SQL SELECT дозволить вам створювати складні запити які не можна легко згенерувати за допомогою утиліт Query by Example, таких як MySQL верстак.

Щоб підвищити продуктивність, ви можете згенеруйте код за допомогою MySQL верстак потім налаштувати це до відповідати вашим вимогам. Це може статися, лише якщо ви розумієте, як працюють оператори SQL!

MySQL Інструкція SELECT із прикладами

Підсумки

  • Ключове слово SQL SELECT використовується для запиту даних із бази даних і є найбільш часто використовуваною командою.
  • Найпростіша форма має синтаксис «SELECT * FROM tableName;»
  • Вирази також можна використовувати в операторі select. Приклад «ВИБЕРІТЬ кількість + ціну З продажу»
  • Команда SQL SELECT також може мати інші додаткові параметри, такі як WHERE, GROUP BY, HAVING, ORDER BY. Про них піде мова пізніше.
  • MySQL Workbench може допомогти розробити оператори SQL, виконати їх і отримати вихідний результат у тому самому вікні.