Задачи по SQL: Oracle SQL с автоматической проверкой
SQL нельзя выучить только чтением, нужно писать запросы. В Kursor есть задачи по Oracle SQL с автоматической проверкой: вы пишете запрос, отправляете и сразу видите результат.
Что вы получаете
- 249 задач по Oracle Database SQL: по темам, от SELECT и фильтрации до групповых функций, JOIN и подзапросов.
- Мгновенная обратная связь: при ошибке показывается разница между вашим результатом и ожидаемым. Можно исправить и отправить снова. История попыток сохраняется.
- Синтетические данные HR: учебные таблицы
EMPLOYEES,DEPARTMENTS,JOB_HISTORYи другие. Личных данных нет. - Задачи по PL/SQL: в курсе 5 задач по PL/SQL, их проверяет преподаватель вручную (автоматическая проверка только для SQL).
- Бесплатное демо: 6 задач по первым двум темам бесплатны, примеры ниже.
- Сертификат: тем, кто завершил курс, выдаётся сертификат Kursor. Им можно поделиться в LinkedIn, и его можно публично проверить (это не сертификат Oracle).
Как это работает
- Читаете условие и видите, какой результат ожидается.
- Пишете SQL-запрос.
- Кнопка «Отправить и проверить» выполняет запрос в настоящей базе Oracle.
- Если результат верный, вы получаете «Верно», если нет — видите разницу между вашим результатом и ожидаемым.
- Исправляете и отправляете снова.
Бесплатные примеры задач
1. Все столбцы из Job_History
Напишите SQL-запрос, который выводит все столбцы таблицы Job_History.
Ожидаемый результат (первые 3 строки). Количество строк: 10. Столбцы: EMPLOYEE_ID, START_DATE, END_DATE, JOB_ID, DEPARTMENT_ID.
| EMPLOYEE_ID | START_DATE | END_DATE | JOB_ID | DEPARTMENT_ID |
|---|---|---|---|---|
| 102 | 13.01.2011 | 24.07.2016 | IT_PROG | 60 |
| 101 | 21.09.2007 | 27.10.2011 | AC_ACCOUNT | 110 |
| 101 | 28.10.2011 | 15.03.2015 | AC_MGR | 110 |
Правильное решение:
SELECT * FROM hr.job_history
2. Алиасы столбцов Job_History
Напишите SQL-запрос, который выводит из таблицы Job_History столбцы employee_id, start_date и end_date. Названия столбцов в результате: Emp#, Start at, End at.
Ожидаемый результат (первые 3 строки). Количество строк: 10. Столбцы: Emp#, Start at, End at.
| Emp# | Start at | End at |
|---|---|---|
| 102 | 13.01.2011 | 24.07.2016 |
| 101 | 21.09.2007 | 27.10.2011 |
| 101 | 28.10.2011 | 15.03.2015 |
Правильное решение:
SELECT employee_id AS "Emp#", start_date AS "Start at", end_date AS "End at" FROM hr.job_history
3. Данные сотрудника с employee_id 200
Напишите SQL-запрос, который выводит из таблицы Employees столбцы employee_id, first_name, last_name сотрудника, у которого employee_id равен 200.
Ожидаемый результат (первые 3 строки). Количество строк: 1. Столбцы: EMPLOYEE_ID, FIRST_NAME, LAST_NAME.
| EMPLOYEE_ID | FIRST_NAME | LAST_NAME |
|---|---|---|
| 200 | Jennifer | Whalen |
Правильное решение:
SELECT employee_id, first_name, last_name FROM hr.employees WHERE employee_id = 200
4. Зарплата больше 10000
Напишите SQL-запрос, который выводит данные сотрудников из таблицы Employees, у которых salary больше 10000.
Ожидаемый результат (первые 3 строки). Количество строк: 15. Столбцы: EMPLOYEE_ID, FIRST_NAME, LAST_NAME, EMAIL, PHONE_NUMBER, HIRE_DATE, JOB_ID, SALARY, COMMISSION_PCT, MANAGER_ID, DEPARTMENT_ID.
| EMPLOYEE_ID | FIRST_NAME | LAST_NAME | PHONE_NUMBER | HIRE_DATE | JOB_ID | SALARY | COMMISSION_PCT | MANAGER_ID | DEPARTMENT_ID | |
|---|---|---|---|---|---|---|---|---|---|---|
| 201 | Michael | Martinez | MMARTINE | 1.515.555.0166 | 17.02.2014 | MK_MAN | 13000.0 | NULL | 100 | 20 |
| 205 | Shelley | Higgins | SHIGGINS | 1.515.555.0170 | 07.06.2012 | AC_MGR | 12008.0 | NULL | 101 | 110 |
| 100 | Steven | King | SKING | 1.515.555.0100 | 17.06.2013 | AD_PRES | 24000.0 | NULL | NULL | 90 |
Правильное решение:
SELECT * FROM hr.employees WHERE salary > 10000
5. Отдел, название которого заканчивается на g
Напишите SQL-запрос, который выводит из таблицы Departments строки, у которых столбец department_name заканчивается на букву g.
Ожидаемый результат (первые 3 строки). Количество строк: 7. Столбцы: DEPARTMENT_ID, DEPARTMENT_NAME, MANAGER_ID, LOCATION_ID.
| DEPARTMENT_ID | DEPARTMENT_NAME | MANAGER_ID | LOCATION_ID |
|---|---|---|---|
| 20 | Marketing | 201 | 1800 |
| 30 | Purchasing | 114 | 1700 |
| 50 | Shipping | 121 | 1500 |
Правильное решение:
SELECT * FROM hr.departments WHERE department_name LIKE '%g'
Темы
Задачи охватывают основные темы Oracle Database SQL: SELECT и фильтрация, однострочные и групповые функции, JOIN, подзапросы, операторы SET, DML и DDL.
Подготовка к сертификационному экзамену
Задачи дают практику SQL. Для сертификата Oracle нужно тренироваться и на вопросах экзамена: - Подготовка к экзамену Oracle 1Z0-071 (SQL) - Подготовка к экзамену Oracle 1Z0-149 (PL/SQL) - Тренажёры экзаменов
Подготовка к собеседованию
Начать
Зарегистрируйтесь и решите первую задачу. Подробнее о курсах: Курсы.
Частые вопросы
Как проверяются задачи?
Вы пишете SQL-запрос и отправляете его, система выполняет его в настоящей базе Oracle и сравнивает результат с ожидаемым. Если ответ неверный, показывается разница между вашим результатом и ожидаемым, и можно попробовать снова. История всех попыток сохраняется.
Задачи бесплатные?
Бесплатны 6 демо-задач по первым двум темам (SELECT и фильтрация), примеры есть и на этой странице. Доступ к полному набору задач открывается в кабинете через бронирование.
Можно ли посмотреть правильное решение?
После неверной попытки показывается сравнение вашего результата с ожидаемым. В бесплатных примерах на этой странице правильное решение показано сразу.
На каких данных я работаю?
На учебной синтетической схеме HR (EMPLOYEES, DEPARTMENTS, JOB_HISTORY и др.). Личных данных нет.
Задачи по PL/SQL тоже проверяются автоматически?
Сейчас автоматическая проверка работает для задач по Oracle SQL. Задачи по PL/SQL проверяет преподаватель вручную.
Можно начать, если я не знаю SQL?
Да. Задачи идут по темам, первые темы — простые запросы SELECT.