Зачем SQL тестировщику и что ему нужно про него знать
-
Upload
kyrylo-bezpalyi -
Category
Education
-
view
80 -
download
7
Transcript of Зачем SQL тестировщику и что ему нужно про него знать
ЗАЧЕМ SQL ТЕСТИРОВЩИКУ ИЧТО ЕМУ НУЖНО ПРО НЕГО
ЗНАТЬБезпалый Кирилл, HubSchool, ImpactUA
Георгий Гулёв, HubSchool, EPAM Lviv
СЕГОДНЯ В ПРОГРАММЕ
• Что такое SQL• Зачем он нужен тестировщику• Основные команды• Что надо знать по SQL при прохождении
собеседования
ЧТО ТАКОЕ SQL
ИЗ ВИКИПЕДИИ
Формальный непроцедурный язык программирования, применяемый для создания, модификации и управления данными в произвольной реляционной базе данных, управляемой соответствующей СУБД
ДЛЯ ЛЮДЕЙ
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
Язык для обработки (чтения/записи/удал
ения) информации записанной в виде
таблиц.
ЗАЧЕМ ОН НУЖЕН ТЕСТИРОВЩИКУ
SQL В ПРОГРАММИРОВАНИИ
• Реляционная БД - стандарт де-факто в способе хранения данных когда требуется гарантированное хранение и доступность информации.
• 99,9% веб-приложений и не только используют SQL базы данных как способ хранения информации.
ЧТО ЖЕ НА ПРАКТИКЕ
ЕЩЕ
ОСНОВНЫЕ КОМАНДЫ
SELECT
• Оператор SELECT используется для извлечения информации или извлечения данных из одной таблицы.• Для извлечения информации из
нескольких таблиц используем JOIN-ы, UNION или INTERSECT• Для запроса надо задать минимум
три момента:• Столбцы для извлечения• Таблицы из которых извлекаем
информацию• Условия, если таковые имеются,
которым данные должны удовлетворять
Выборка информации из таблиц(ы)
SELECT hottiesFROM roomWHERE lame != ‘yes’
СЛОЖНЫЕ УСЛОВИЯ
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Можно комбинировать несколько условий для удовлетворения ваших «тайных желаний».
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 позволяет
объединить результаты любых двух или более запросов в одну
выборку, которая будет включать все строки, которые принадлежат
к запросу в этом объединении.
EXCEPT И INTERSECT
• Команда EXCEPT возвращает все значения которые есть в левом запросе, но которые отсутствуют в правом.
• Команда INTERSECT возвращает все значения, которые возвращаются одновременно и левым и правым запросом.
СВЯЗЫВАЕМ ТАБЛИЦЫ
• INNER JOIN – взять общее из двух таблиц
• OUTER JOIN – взять записи из одной или обеих таблиц, которые не имеют каких-либо соответствующих записей можно найти в другой таблице
• CROSS JOIN – возвращает все записи из одной таблицы со всеми записями из другой таблицы. ВСЕГДА добавляйте условия.
INNER JOINOUTER JOINSCROSS JOINS
ДЕМО
INSERT
• INSERT INTO *ТАБЛИЦА*(*ПОЛЯ*)
• VALUES (*ЗНАЧЕНИЯ*)
Добавление информации
ДЕМО
UPDATE
• UPDATE *ТАБЛИЦА*SET *ПОЛЕ* = *ЗНАЧЕНИЕ*WHERE *УСЛОВИЯ*
Обновление существующей информации
ДЕМО
DELETE
• DELETE FROM *ТАБЛИЦА*[FROM *ТАБЛИЦЫ*][WHERE *УСЛОВИЯ*]
Удаление информации из таблицDELETE FROM lifeWHERE music_interests IN
(‘Justin Bieber’, ’Ані Лорак’)
ДЕМО
ДАЛЬШЕ ТОЛЬКО ВАША ФАНТАЗИЯ
ВОПРОСЫ? :)
Передаю слово
МАСТЕРУ