Вступ до вибору в Oracle
Oracle - одна з найбільш широко використовуваних баз даних у цій галузі. Найчастіше використовується запит SELECT. Цей запит використовується для отримання даних з однієї або декількох таблиць у базі даних. SELECT-запит використовується не поодинці, а з ним, для отримання даних із баз даних у галузі використовується багато умов, пропозицій та внутрішніх запитів. SELECT-запит не маніпулює жодними даними таблиці, в якій він виконується. У цій статті ми будемо обговорювати різні способи використання SELECT-запиту в ORACLE.
Синтаксис:
SELECT expressions
FROM tables
(WHERE conditions);
Перші два рядки в синтаксисі є обов'язковою частиною синтаксису, але (умови WHERE) є необов'язковим, оскільки він використовується, якщо ми хочемо отримати дані з однієї або декількох таблиць на основі деяких умов. "Виразки" у синтаксисі представляють стовпці таблиці. Якщо ми хочемо витягнути всі поля з таблиці, ставимо «*» замість «виразів» у синтаксисі, інакше ставимо назви стовпців.
Приклади для реалізації Select у Oracle
Нижче наведено різні приклади вибору в oracle:
1. ВИБІРИ всі поля без умови WHERE
Щоб вибрати всі поля з таблиць: Ми будемо використовувати символ "*" для позначення того, що ми хочемо витягнути всі поля з певної таблиці.
Запит:
SELECT * from employee;
Цей запит отримає всі записи з таблиці, оскільки до нього не додається жодне умовне положення.
Вихід:
2. ВИБІРТЕ всі поля з умовою ГДЕ
Тепер ми будемо використовувати там, де умова за тим самим раніше використовуваним запитом. У цьому запиті ми хочемо лише деталі конкретного працівника. Для цього ми скористаємося умовою де. давайте подивимось на запит
Запит:
SELECT * from employee WHERE EMPLOYEE_ID= 'AD001';
Ми використовуємо EMPLOYEE_ID у цьому запиті, оскільки це первинний ключ у цій таблиці, і тому він унікальний.
Вихід:
3. Виберіть одне поле з таблиці
У цьому прикладі ми будемо використовувати оператор SELECT, щоб вибрати кілька полів, але не всі поля з таблиці. Давайте подивимось на запит.
Запит:
SELECT employee_id, name from employee;
Цей запит відображатиме лише два стовпці, оскільки ми не використовували "*" після SELECT у цьому запиті.
Вихід:
4. Виберіть поля з декількох таблиць
У цьому прикладі ми будемо використовувати оператор SELECT для отримання даних з більш ніж однієї таблиці за допомогою JOIN. Давайте подивимось на запит.
Запит:
SELECT employee.name, vehicle.vehicle_name from employee INNER JOIN vehicle ON employee.vehicle_id = vehicle.vehicle_id;
Тут у цьому запиті ми використовуємо оператор SELECT, який поєднує дві таблиці, виходячи з умови, що ідентифікатор транспортного засобу з таблиці працівників повинен відповідати ідентифікатору транспортного засобу від таблиці транспортного засобу. Запит відображає ім'я працівника з таблиці працівника та ім'я транспортного засобу з таблиці транспортного засобу.
Вихід:
5. Відображайте записи в порядку використання SELECT
Ми також можемо відображати окремі записи в ЗАМОВЛЕННІ, які можуть бути висхідними або низхідними, використовуючи пункт ORDER BY із запитом. Ми розглянемо як запити щодо зростання, так і низхідні.
а. Запит щодо порядку зростання
SELECT * from employee ORDER BY name ASC;
У цьому запиті ми відображаємо всі записи, а набір результатів сортується за назвою у порядку зростання.
На скріншоті нижче показаний результат, коли запит виконується в SQL Developer.
Вихід:
б. Запит про зменшення порядку
SELECT * from employee ORDER BY name DESC;
У цьому запиті ми відображаємо всі записи з таблиці, а набір результатів сортується за назвою у порядку зменшення
На скріншоті нижче показаний результат, коли запит виконується в SQL Developer.
Вихід:
6. Виберіть запит із пунктом GROUP BY
Ми використовуємо пропозицію GROUP BY з оператором SELECT, коли хочемо отримати записи на основі груп. Тому в основному вона групує рядки, які мають однакові значення. Він використовується, як правило, у поєднанні із сукупними функціями. Це корисно для складання зведених звітів.
Зараз ми розглянемо приклад, щоб побачити, як ми можемо використовувати GROUP BY з оператором SELECT в базі даних oracle.
Запит:
SELECT COUNT(EMPLOYEE_ID), VEHICLE_NAME FROM employee GROUP BY VEHICLE_NAME;
Тож у наведеному вище прикладі ми в основному знаходимо кількість працівників, які використовують певну марку автомобіля. GROUP BY групує записи на основі типу машини, а потім ми використовуємо сукупну функцію COUNT, щоб обчислити кількість працівників у кожній групі, використовуючи стовпець Employ_id, оскільки це основний ключ таблиці.
Вихід:
7. ВИБІРИТЕ запит із пунктом HAVING
Зазначене застереження використовується з оператором select, коли ми хочемо мати деякі умови, оскільки ключове слово не може бути використане безпосередньо з сукупними функціями. Саме тому в SQL було додано пункт про наявність. Ми побачимо приклад того, як ми можемо використати клавішу having з оператором select.
Запит:
SELECT COUNT(EMPLOYEE_ID), VEHICLE_NAME FROM employee GROUP BY VEHICLE_NAME HAVING COUNT(EMPLOYEE_ID)> 2;
Як ми можемо бачити, що ми додали пункт HAVING до групи GROUP BY, завдяки якому ми можемо поставити умову, що відображатимуться лише транспортні засоби, у яких більше двох працівників. Тут стає корисним пункт HAVING.
Вихід:
Якщо ми бачимо результат, ми отримуємо лише два записи замість п'яти, які ми отримали, коли ми використовували функцію GROUP BY.
Висновок
У цій статті ми дізналися синтаксис та причину, чому ми використовуємо SELECT, а також різні способи написання SELECT-запиту в SQL, а також де і з якої причини ми повинні їх використовувати.
Рекомендовані статті
Це посібник з вибору в Oracle. Тут ми обговорюємо вступ та різні приклади вибору запиту в SQL із синтаксисом. Ви також можете переглянути наступні статті, щоб дізнатися більше -
- Приєднується до Oracle
- Зберігання даних Oracle
- Agile Oracle
- Що таке база даних Oracle
- Топ-6 прикладів запитів внутрішньої приєднання до Oracle
- Найвища різниця від первинного ключа до зовнішнього ключа