Зачем sql тестировщику и что ему нужно про него знать
TRANSCRIPT
![Page 1: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/1.jpg)
ЗАЧЕМ SQL ТЕСТИРОВЩИКУ ИЧТО ЕМУ НУЖНО ПРО НЕГО
ЗНАТЬБезпалый Кирилл, HubSchool, ImpactUA
Георгий Гулёв, HubSchool, EPAM Lviv
![Page 2: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/2.jpg)
СЕГОДНЯ В ПРОГРАММЕ
• Что такое SQL• Зачем он нужен тестировщику• Основные команды• Что надо знать по SQL при прохождении
собеседования
![Page 3: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/3.jpg)
ЧТО ТАКОЕ SQL
![Page 4: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/4.jpg)
ИЗ ВИКИПЕДИИ
Формальный непроцедурный язык программирования, применяемый для создания, модификации и управления данными в произвольной реляционной базе данных, управляемой соответствующей СУБД
![Page 5: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/5.jpg)
ДЛЯ ЛЮДЕЙ
SELECT Person.FirstName , Person.LastName , Employee.JobTitle , Employee.BirthDate , Department.Name as DepartmentName , Department.GroupName , Shift.Name AS ShiftName , Employee.LoginID , Employee.MaritalStatus , Employee.GenderFROM EmployeeDepartmentHistory as EDH INNER JOIN Shift ON EDH.ShiftID = Shift.ShiftID INNER JOIN Department ON EDH.DepartmentID = Department.DepartmentID INNER JOIN Employee ON EDH.BusinessEntityID = Employee.BusinessEntityID INNER JOIN Person ON Employee.BusinessEntityID = Person.BusinessEntityID
Язык для обработки (чтения/записи/удал
ения) информации записанной в виде
таблиц.
![Page 6: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/6.jpg)
ЗАЧЕМ ОН НУЖЕН ТЕСТИРОВЩИКУ
![Page 7: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/7.jpg)
SQL В ПРОГРАММИРОВАНИИ
• Реляционная БД - стандарт де-факто в способе хранения данных когда требуется гарантированное хранение и доступность информации.
• 99,9% веб-приложений и не только используют SQL базы данных как способ хранения информации.
![Page 8: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/8.jpg)
![Page 9: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/9.jpg)
ЧТО ЖЕ НА ПРАКТИКЕ
![Page 10: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/10.jpg)
ЕЩЕ
![Page 11: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/11.jpg)
ОСНОВНЫЕ КОМАНДЫ
![Page 12: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/12.jpg)
SELECT
• Оператор SELECT используется для извлечения информации или извлечения данных из одной таблицы.• Для извлечения информации из
нескольких таблиц используем JOIN-ы, UNION или INTERSECT• Для запроса надо задать минимум
три момента:• Столбцы для извлечения• Таблицы из которых извлекаем
информацию• Условия, если таковые имеются,
которым данные должны удовлетворять
Выборка информации из таблиц(ы)
SELECT hottiesFROM roomWHERE lame != ‘yes’
![Page 13: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/13.jpg)
СЛОЖНЫЕ УСЛОВИЯ
SELECT first_name, last_nameFROM employeesWHERE department = ‘shipping’ AND
gender = ‘F’ AND hired >= ‘2000-JAN-01’
SELECT first_name, last_nameFROM employeesWHERE department = ‘shipping’ OR
employee_id <= 610007Можно комбинировать несколько условий для удовлетворения ваших «тайных желаний».
![Page 14: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/14.jpg)
UNION
SELECT first_name, last_nameFROM employeesWHERE department = ‘shipping’UNIONSELECT first_name, last_nameFROM employeesWHERE hire_date
BETWEEN ‘1-Jan-1990’AND ‘1-Jan-2000’Команда UNION позволяет
объединить результаты любых двух или более запросов в одну
выборку, которая будет включать все строки, которые принадлежат
к запросу в этом объединении.
![Page 15: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/15.jpg)
EXCEPT И INTERSECT
• Команда EXCEPT возвращает все значения которые есть в левом запросе, но которые отсутствуют в правом.
• Команда INTERSECT возвращает все значения, которые возвращаются одновременно и левым и правым запросом.
![Page 16: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/16.jpg)
СВЯЗЫВАЕМ ТАБЛИЦЫ
• INNER JOIN – взять общее из двух таблиц
• OUTER JOIN – взять записи из одной или обеих таблиц, которые не имеют каких-либо соответствующих записей можно найти в другой таблице
• CROSS JOIN – возвращает все записи из одной таблицы со всеми записями из другой таблицы. ВСЕГДА добавляйте условия.
INNER JOINOUTER JOINSCROSS JOINS
![Page 17: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/17.jpg)
![Page 18: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/18.jpg)
ДЕМО
![Page 19: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/19.jpg)
INSERT
• INSERT INTO *ТАБЛИЦА*(*ПОЛЯ*)
• VALUES (*ЗНАЧЕНИЯ*)
Добавление информации
![Page 20: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/20.jpg)
ДЕМО
![Page 21: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/21.jpg)
UPDATE
• UPDATE *ТАБЛИЦА*SET *ПОЛЕ* = *ЗНАЧЕНИЕ*WHERE *УСЛОВИЯ*
Обновление существующей информации
![Page 22: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/22.jpg)
ДЕМО
![Page 23: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/23.jpg)
DELETE
• DELETE FROM *ТАБЛИЦА*[FROM *ТАБЛИЦЫ*][WHERE *УСЛОВИЯ*]
Удаление информации из таблицDELETE FROM lifeWHERE music_interests IN
(‘Justin Bieber’, ’Ані Лорак’)
![Page 24: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/24.jpg)
ДЕМО
![Page 25: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/25.jpg)
ДАЛЬШЕ ТОЛЬКО ВАША ФАНТАЗИЯ
![Page 26: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/26.jpg)
ВОПРОСЫ? :)
![Page 27: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/27.jpg)
![Page 28: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/28.jpg)
Передаю слово
МАСТЕРУ
![Page 29: Зачем SQL тестировщику и что ему нужно про него знать](https://reader031.vdocuments.mx/reader031/viewer/2022013120/58ee369c1a28abec578b4671/html5/thumbnails/29.jpg)