10 best online sql courses to enroll in 2021

RDBMS

RDBMS расшифровывается как реляционная система управления базами данных.

RDBMS является основой для SQL, а также для всех современных систем баз данных, таких как MS SQL Server, IBM DB2, Oracle, MySQL и Microsoft Access.

Данные в RDBMS хранятся в объектах базы данных, называемых таблицами. Таблица — это набор связанных записей данных, состоящий из столбцов и строк.

Посмотрите на таблицу «Customers»:

Пример

SELECT * FROM Customers;

Каждая таблица разбита на более мелкие сущности, называемые полями.
Поля в таблице Customers состоят из CustomerID, CustomerName, ContactName, Address, City, PostalCode и Country.
Поле — это столбец в таблице, предназначенный для хранения определенной информации о каждой записи в таблице.

Запись, также называемая строкой, каждая отдельная запись, существующая в таблице.
Например, в приведенной выше таблице Customers имеется 91 запись. Запись — это горизонтальная сущность в таблице.

Столбец — это вертикальная сущность в таблице, содержащая всю информацию, связанную с определенным полем в таблице.

Индексы

Индексы позволяют ускорить поиск по условиям вроде , , , , , а также сортировку (поля по которым идет сортировка должны идти в конце индекса). Разница на большой таблице может быть огромная — порядка 1 тысячной секунды против нескольких секунд. Ну например, если у нас есть таблица размером в миллион записей и мы делаем запрос

то без индекса MySQL вынуждена будет прочитать с диска в память миллион значений, отсортировать их только ради того, чтобы взять первые 10. Если же есть индекс по полю (который хранит отсортированные по возрастанию значения этого поля) то MySQL просто возьмет из него первые 10 записей. Разница в скорости работы будет огромная.

Вот статьи для начинающих про индексы:

Если ты все прочел внимательно, ответь на вопрос, может ли индекс (если да, то какой) ускорить такие запросы:

SQL Справочник

SQL Ключевые слова
ADD
ADD CONSTRAINT
ALTER
ALTER COLUMN
ALTER TABLE
ALL
AND
ANY
AS
ASC
BACKUP DATABASE
BETWEEN
CASE
CHECK
COLUMN
CONSTRAINT
CREATE
CREATE DATABASE
CREATE INDEX
CREATE OR REPLACE VIEW
CREATE TABLE
CREATE PROCEDURE
CREATE UNIQUE INDEX
CREATE VIEW
DATABASE
DEFAULT
DELETE
DESC
DISTINCT
DROP
DROP COLUMN
DROP CONSTRAINT
DROP DATABASE
DROP DEFAULT
DROP INDEX
DROP TABLE
DROP VIEW
EXEC
EXISTS
FOREIGN KEY
FROM
FULL OUTER JOIN
GROUP BY
HAVING
IN
INDEX
INNER JOIN
INSERT INTO
INSERT INTO SELECT
IS NULL
IS NOT NULL
JOIN
LEFT JOIN
LIKE
LIMIT
NOT
NOT NULL
OR
ORDER BY
OUTER JOIN
PRIMARY KEY
PROCEDURE
RIGHT JOIN
ROWNUM
SELECT
SELECT DISTINCT
SELECT INTO
SELECT TOP
SET
TABLE
TOP
TRUNCATE TABLE
UNION
UNION ALL
UNIQUE
UPDATE
VALUES
VIEW
WHERE

MySQL Функции
Функции строк
ASCII
CHAR_LENGTH
CHARACTER_LENGTH
CONCAT
CONCAT_WS
FIELD
FIND_IN_SET
FORMAT
INSERT
INSTR
LCASE
LEFT
LENGTH
LOCATE
LOWER
LPAD
LTRIM
MID
POSITION
REPEAT
REPLACE
REVERSE
RIGHT
RPAD
RTRIM
SPACE
STRCMP
SUBSTR
SUBSTRING
SUBSTRING_INDEX
TRIM
UCASE
UPPER
Функции чисел
ABS
ACOS
ASIN
ATAN
ATAN2
AVG
CEIL
CEILING
COS
COT
COUNT
DEGREES
DIV
EXP
FLOOR
GREATEST
LEAST
LN
LOG
LOG10
LOG2
MAX
MIN
MOD
PI
POW
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SUM
TAN
TRUNCATE
Функции дат
ADDDATE
ADDTIME
CURDATE
CURRENT_DATE
CURRENT_TIME
CURRENT_TIMESTAMP
CURTIME
DATE
DATEDIFF
DATE_ADD
DATE_FORMAT
DATE_SUB
DAY
DAYNAME
DAYOFMONTH
DAYOFWEEK
DAYOFYEAR
EXTRACT
FROM_DAYS
HOUR
LAST_DAY
LOCALTIME
LOCALTIMESTAMP
MAKEDATE
MAKETIME
MICROSECOND
MINUTE
MONTH
MONTHNAME
NOW
PERIOD_ADD
PERIOD_DIFF
QUARTER
SECOND
SEC_TO_TIME
STR_TO_DATE
SUBDATE
SUBTIME
SYSDATE
TIME
TIME_FORMAT
TIME_TO_SEC
TIMEDIFF
TIMESTAMP
TO_DAYS
WEEK
WEEKDAY
WEEKOFYEAR
YEAR
YEARWEEK
Функции расширений
BIN
BINARY
CASE
CAST
COALESCE
CONNECTION_ID
CONV
CONVERT
CURRENT_USER
DATABASE
IF
IFNULL
ISNULL
LAST_INSERT_ID
NULLIF
SESSION_USER
SYSTEM_USER
USER
VERSION

SQL Server функции
Функции строк
ASCII
CHAR
CHARINDEX
CONCAT
Concat with +
CONCAT_WS
DATALENGTH
DIFFERENCE
FORMAT
LEFT
LEN
LOWER
LTRIM
NCHAR
PATINDEX
QUOTENAME
REPLACE
REPLICATE
REVERSE
RIGHT
RTRIM
SOUNDEX
SPACE
STR
STUFF
SUBSTRING
TRANSLATE
TRIM
UNICODE
UPPER
Функции чисел
ABS
ACOS
ASIN
ATAN
ATN2
AVG
CEILING
COUNT
COS
COT
DEGREES
EXP
FLOOR
LOG
LOG10
MAX
MIN
PI
POWER
RADIANS
RAND
ROUND
SIGN
SIN
SQRT
SQUARE
SUM
TAN
Функции дат
CURRENT_TIMESTAMP
DATEADD
DATEDIFF
DATEFROMPARTS
DATENAME
DATEPART
DAY
GETDATE
GETUTCDATE
ISDATE
MONTH
SYSDATETIME
YEAR
Функции расширений
CAST
COALESCE
CONVERT
CURRENT_USER
IIF
ISNULL
ISNUMERIC
NULLIF
SESSION_USER
SESSIONPROPERTY
SYSTEM_USER
USER_NAME

MS Access функции
Функции строк
Asc
Chr
Concat with &
CurDir
Format
InStr
InstrRev
LCase
Left
Len
LTrim
Mid
Replace
Right
RTrim
Space
Split
Str
StrComp
StrConv
StrReverse
Trim
UCase
Функции чисел
Abs
Atn
Avg
Cos
Count
Exp
Fix
Format
Int
Max
Min
Randomize
Rnd
Round
Sgn
Sqr
Sum
Val
Функции дат
Date
DateAdd
DateDiff
DatePart
DateSerial
DateValue
Day
Format
Hour
Minute
Month
MonthName
Now
Second
Time
TimeSerial
TimeValue
Weekday
WeekdayName
Year
Другие функции
CurrentUser
Environ
IsDate
IsNull
IsNumeric

SQL ОператорыSQL Типы данныхSQL Краткий справочник

Datapine SQL Editor

Datapine came out with a vision that allows managers and decision-makers to generate ideas and reports to effectively manage their business. In addition, KPI Datapine reports include a data visualization tool that allows you to create a view of the data so that each user can understand it.

In addition, these data and datapath in reports can be easily shared through report automation.

Advantages

  • Datapine is a SaaS BI Tool, which means that you can access it at any time from anywhere.
  • It helps you to create meaningful 3D charts, reports, and analyze data in real-time.
  • Easy to set up in just 10 minutes and you are ready to use it.
  • Automatic code generation and advanced SQL query.
  • The data warehouse option is also available.

«Уроки SQL» от itProger

  • Длительность: 8 уроков
  • Сертификат: нет
  • Формат обучения: видеоуроки + практические задания

Описание курса

Данный курс предназначен для обучения основам работы с SQL пользователей, которые прежде никогда не сталкивались с системами управления базами данных.

Материал представляет собой 8 видеороликов, размещённых на хостинге YouTube с небольшим текстовым сопровождением на сайте образовательного портала.

Кроме того, itProger предоставляет задания к урокам, однако доступны они только при наличии оформленной платной подписки.

Во время прохождения курса вы узнаете, что такое SQL, научитесь создавать и редактировать базы данных, а также анализировать включенную в них информацию.

Этого объёма знаний достаточно для начала полноценного изучения SQL и СУБД.

  • Простые и понятные уроки;
  • Можно получить обратную связь в комментариях к видео;
  • Практические задания после каждого урока

Усложненная (но более жизненная) задача про лайки

В воображаемой социальной сети есть Пользователи (id, имя), Фото (id, название, автор) и Комментарии К Фото (id, текст, автор, к какому Фото относится). Необходимо добавить возможность для Пользователей ставить лайки другим Пользователям, Фото или Комментариям К Фото. Нужно реализовать такие возможности:

  • пользователь не может поставить 2 лайка одной и той же сущности (например одному и тому же Фото)
  • пользователь может отозвать лайк
  • необходимо иметь возможность посчитать число полученных сущностью лайков и вывести список Пользователей, поставивших лайки
  • в будущем могут появиться новые виды сущностей которые можно лайкать

Для начала, нужно решить задачу без оглядки на производительность. Очень желательно следовать принципам нормализации и помечать связи внешними ключами (а также на уровне Бд предотвратить возможность повторной отправки лайка). Далее, можно дополнить решение комментариями по поводу оптимизаций производительности.

Тут есть несколько вариантов решения.

Conclusion

SQL is one of the most commonly used languages for administering, managing, and controlling data in a database. You need to understand what SQL is, only then can a person understand its future functioning.

In addition, if you are an SQL developer or programmer, you must clearly define the number of tools available on the market. Therefore, it is a difficult task to select or select a particular tool from the best available options.

Ultimately, you must find the ideal tool that best suits your work and needs. So, just be sure to evaluate and consider the factors of each tool. All this definitely ensures that developers will not waste time and will continue to work with the tool on time.

 
Free toolsSQL

Learning Take-Away:

Upon completion of this course, students will be able to:
1. Explain the difference between SQL, PL/SQL and SQL*PLUS.
2.Write basic SQL queries to retrieve desired data.
3. Use DML statements (insert, update, and delete).
4. Use DDL statements (create, alter, and drop).
5.Use transaction control statements to commit, rollback, and create savepoints.
6. Write advanced queries.
7. Write scripts to do queries and display SQL*PLUS reports.
8. Control access to your database objects.
9. Write a PL/SQL block using all elements of block structure.
10.Write PL/SQL statements using lexical units, declared variables, and
assignment statements.
11. Use control structures to loop, branch, and jump.
12. Use PL/SQL named exceptions and user-defined exceptions.
13. Use explicit cursors.

Как строится работа SQL-аналитика над проектом

Стоит отметить, что работа SQL-аналитика начинается задолго до начала непосредственного анализа и состоит из нескольких этапов:

1) Выявление потребностей заказчика и его «боли», формализация и согласование требований.

Во многих компаниях, в том числе и у нас, клиент заполняет специальную анкету. Там описывается то, что бы он хотел проанализировать (процессы или операции), какие цели и задачи ставит. Этот этап всегда длительный и сложный. 

Во-первых, клиент не всегда сразу понимает, чего хочет на самом деле, а, во-вторых, его видение часто не совпадает с нашими возможностями. Мы, прежде всего, именно исследуем и анализируем, находим перспективы и возможности для совершенствования, предлагаем какие-то пути решения найденных проблем, но итоговое слово всегда за бизнес-заказчиком. 

2) Изучение и исследование регламентов бизнес-процессов компаний, юридические согласования.

Внедрение нового ПО или даже пилотный проект — всегда долгая история в больших компаниях. Много юридических моментов, согласований со службами безопасности и т.д. После этого мы начинаем изучать качество данных: определяем, насколько они полные, достоверные, точные и согласованные

Это очень важно, поскольку именно оценка качества данных и мероприятия по их повышению — важнейший этап любого проекта по аналитике, поскольку некачественные данные приводят к заведомо некорректному результату. 

Если мы понимаем, что для реконструкции процесса нам не хватает каких-либо данных, приходится обсуждать возможность добавления дополнительных источников.

3) Непосредственно аналитика.

Начинаем подробно и внимательно изучать все полученные массивы данных, чтобы правильно связать все данные из полученных источников (логи, агенты, регламенты, карты и т.д.).  Нам нужно найти необходимые процессы или их кусочки, чтобы корректно построить процесс. Это делается обычно тремя способами:

  1. При помощи автоматических алгоритмов, когда выявляются повторяющиеся цепочки событий.
  2. Полуавтоматически, когда вручную задаются начало и конец операции/процесса, а закономерности и связи ищет алгоритм.
  3. Вручную — для сложных и длинных процессов/операций, когда нужно «увязать» деятельность сотрудников из разных подразделений. Это тот случай, когда может потребоваться большое количество разных источников.

4) Подготовка итоговых презентаций для клиентов.

Четко и лаконично, исключительно на основе фактов и в доступной форме нужно рассказать о том, к чему пришли в результате анализа.

К чему должен быть готов специалист — описывать сложные вещи просто. Не все понимают специфические термины а-ля process mining, OLAP-кубы и другие. Полезную информацию нужно предоставлять в доступной форме и обязательно визуальным способом.

Как можно войти в профессию

Я окончила бакалавриат и магистратуру по направлению «Бизнес-информатика». Всегда тяготела к точным наукам, но учеба на стыке технических и бизнес-дисциплин показалась более перспективной и интересной. Мы не ограничивались разработкой или, например, управленческими навыками, а копали глубже: изучали общую теорию систем, структуры, базы и хранилища данных, моделирование бизнес-процессов, а также их совершенствование и управление ими. Особый фокус делали на анализе данных, благодаря чему и произошло мое первое знакомство с языком SQL. 

Несколько лет проработала 1С-программистом, однако после первого курса магистратуры поняла, что в жизни надо что-то менять. Вакансия «SQL-аналитик» в «Инфомаксимум» поначалу вызвала больше вопросов и опасений: а смогу ли я? Хватит ли профильных навыков и компетенций? 

Собеседование, обязательное тестовое, и вот — первый рабочий день. Он прошел на удаленке: со мной связалось руководство, дали вводные относительно доступов, документов, баз знаний, представили наставника, с кем в паре предстояло изучать основные моменты. 

Сложность была в том, что пришла я сразу на большой проект и все практические навыки получала на «поле боя». Постоянно спрашивала у коллег различные тонкости и много-много-много изучала самостоятельно — на курсах, в книгах и экспертных статьях. 

Формат

12 занятий (9 часов теории) + много практических заданий для самостоятельной работы + постоянные консультации тренера в чате.

Обучение происходит следующим образом:

Раз в неделю по понедельникам до 12.00 по Московскому времени выкладываются теоретические лекции, ссылки на дополнительные материалы, домашняя работа.

Теоретическую информацию можно посмотреть в любое удобное время.

Помимо теоретической части, вас также ждут практические домашние задания, которые тщательно проверяются тренером. После проверки практических заданий Вы получаете оценку и подробный комментарий по своей работе и при необходимости советы по доработке. По результатам комментариев тренера Вы можете переделать домашнюю работу и улучшить свою оценку.

Общение участников курса и тренеров проходит и в телеграм-чате учебной группы, где можно задавать вопросы тренеру и при желании общаться с другими участниками учебной группы. Каждый день тренер будет доступен в телеграм-чате и каждый день будет отвечать на вопросы, Вы можете задавать вопросы по теоретическому материалу или домашней работе, как только они у вас возникают.

Все выпускники, успешно сдавшие домашние задания, получают сертификат.

43 задачи по SQL

В таблице competition хранится информация о проводимых соревнованиях:

  • competition_id (ID соревнования);
  • competition_name (наименование соревнования);
  • world_record (мировой рекорд);
  • set_date (дата установки мирового рекорда);

В таблице result хранится информация  о результатах соревнований:

  • competition_id (ID соревнования);
  • sportsman_id (ID спортсмена);
  • result (результат спортсмена);
  • city (место проведения);
  • hold_date (дата проведения);

В таблице sportsman хранится информация о спортсменах:

  • sportsman_id (ID спортсмена);
  • sportsman_name (имя спортсмена);
  • rank (разряд спортсмена);
  • year_of_birth (год рождения);
  • personal_record (персональный рекорд);
  • country (страна спортсмена);

Задачка про кинотеатр

Вот дополнительная, более сложная задачка. Есть кинотеатр, в нем идут фильмы. У фильма есть название, длительность (пусть для простоты будет 60, 90 или 120 минут), цена билета (в разное время и дни может быть разная), время начала сеанса (один фильм может быть показан несколько раз в разное время за разную цену). Также, есть информация о купленных билетах (номер билета, на какой сеанс).

Задания:

составь грамотную нормализованную схему хранения этих данных в БД. Внеси в нее 4-5 фильмов, расписание на один день и несколько проданных билетов.

Сделай запросы, считающие и выводящие в понятном виде:

  • ошибки в расписании (фильмы накладываются друг на друга), отсортированные по возрастанию времени. Выводить надо колонки «фильм 1», «время начала», «длительность», «фильм 2», «время начала», «длительность».
  • перерывы больше или равные 30 минут между фильмами, выводятся по уменьшению длительности перерыва. Выводить надо колонки «фильм 1», «время начала», «длительность», «время начала второго фильма», «длительность перерыва».
  • список фильмов, для каждого указано общее число посетителей за все время, среднее число зрителей за сеанс и общая сумма сбора по каждому, отсортированные по убыванию прибыли. Внизу таблицы должна быть строчка «итого», содержащая данные по всем фильмам сразу.
  • число посетителей и кассовые сборы, сгруппированные по времени начала фильма: с 9 до 15, с 15 до 18, с 18 до 21, с 21 до 00:00. (то есть сколько посетителей пришло с 9 до 15 часов, сколько с 15 до 18 и т.д.).

SQL Учебник

SQL ГлавнаяSQL ВведениеSQL СинтаксисSQL SELECTSQL SELECT DISTINCTSQL WHERESQL AND, OR, NOTSQL ORDER BYSQL INSERT INTOSQL Значение NullSQL Инструкция UPDATESQL Инструкция DELETESQL SELECT TOPSQL MIN() и MAX()SQL COUNT(), AVG() и …SQL Оператор LIKESQL ПодстановочныйSQL Оператор INSQL Оператор BETWEENSQL ПсевдонимыSQL JOINSQL JOIN ВнутриSQL JOIN СлеваSQL JOIN СправаSQL JOIN ПолноеSQL JOIN СамSQL Оператор UNIONSQL GROUP BYSQL HAVINGSQL Оператор ExistsSQL Операторы Any, AllSQL SELECT INTOSQL INSERT INTO SELECTSQL Инструкция CASESQL Функции NULLSQL ХранимаяSQL Комментарии

Кто такой SQL-аналитик

Начнем чуть раньше. Если утрировать, то бизнес-анализ представляет собой процесс превращения данных в информацию, а информации — в деньги. Основная цель такого процесса — повысить эффективность компании и ее конкурентоспособность. 

Бизнес-аналитика применяет  результаты анализа в практических целях. Бизнес-аналитик изучает потребности, проблемы, потенциальные возможности бизнеса в рамках заданных требований и рекомендует наиболее оптимальные решения, позволяющие компании достичь цели. 

SQL-аналитика — это более узкая часть бизнес-аналитики, главным инструментом которой стал SQL, или Structured Query Language — язык запросов, позволяющий работать с данными из БД: «читать» их, извлекать, исследовать, обрабатывать и визуализировать. 

Утрированный пример: представим таблицу (Students_data), которая содержит следующее:

  • ФИО человека (student);
  • номер школы (school);
  • предмет (subject);
  • количество баллов по ЕГЭ (points).

Как только вся информация собрана, мы получаем сущность — готовую таблицу, атрибуты — столбцы, записи — строки. Итого: некая база данных. Нам надо узнать, кто из школьников написал ЕГЭ по математике на 60 и выше баллов. И чтобы вытащить эту информацию из базы, нужно прописать на специфическом языке специальный запрос, который реализует как раз SQL:

select

student

from students_data

where subject = ‘Математика’ and points >=60

Несмотря на то, что SQL принято считать лишь одним из инструментов аналитики, он очень гибкий и достаточно обширный: на нем можно в том числе проектировать базы данных, задавать их структуру, создавать таблицы и т.д. Но мы используем в большей степени только ту часть, которая отвечает за запросы, то есть за извлечение данных из базы и их обработку.

В качестве источников данных в большинстве случаев выступают логи — данные из журналов событий информационных систем, где в хронологическом порядке зафиксированы все действия пользователя. Вспомните, где, как и в скольких программах вы работаете в течение дня, умножьте это на пару месяцев и еще на пару десятков/сотен человек. Данные получаются действительно огромными. 

Отсюда вытекает основная задача SQL-аналитика: понять, как нужно извлечь, преобразовать и визуализировать нужную информацию, чтобы это было полезно для бизнес-заказчика. 

Какими навыками должен обладать SQL-аналитик

Не скажу, что порог входа в профессию очень высокий и сложный, однако он требует специфических навыков и умений, основные из которых:

  • базовое знание SQL;
  • азы работы с большими данными;
  • общие знания о теории баз данных и методологиях проектирования;
  • навыки работы с одной из промышленных СУБД (лучше всего — ClickHouse);
  • аналитический склад мышления.

SQL-аналитику необходимо уметь посмотреть на ситуацию с разных ракурсов — как клиента, так и технического исполнителя. Это позволяет учитывать все аспекты работы при генерации вариантов решения поставленной задачи

Soft skills будут мало чем отличаться от других областей аналитики:

широкий кругозор
Насмотренность и начитанность, а также знание специфики различных видов деятельности (например, концентрация не только на банковской сфере, но и промышленности, телекоммуникациях, логистике и др.) помогает быстрее вникать в детали проекта и использовать уже готовые конструкции, а не начинать работу с нуля;

внимание к деталям

Мы имеем дело с огромными массивами данных, поэтому очень важно, чтобы полученные итоги были достоверными и обоснованными
Правило: «Семь раз примерь, один раз отрежь» — применимо к любой аналитической работе, где главный враг — суета, из-за которой можно не заметить важные мелочи;

коммуникабельность. Очень банальный, но актуальный скилл

Приходится общаться с большим количеством специалистов — от бизнес-заказчиков до проектных менеджеров, разработчиков и тестировщиков, доносить до них нужную информацию и делать релевантные запросы; 

навыки презентации. Мало выполнить работу и в совершенстве знать результат, необходимо сжато и доходчиво донести информацию до заказчиков/руководства/коллег. Это универсальный навык, пожалуй, полезный не только в аналитике, но и во многих других профессиях;

работа в команде. Здесь все понятно. Без комментариев.

UPDATE несколько записей

Именно предложение WHERE определяет, сколько записей будет обновлено.

Следующая инструкция SQL обновит имя контакта до «Juan» для всех записей, где страна — «Mexico»:

Пример

UPDATE Customers
SET ContactName=’Juan’
WHERE Country=’Mexico’;

Выбор из таблицы «Customers» теперь будет выглядеть следующим образом:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Alfred Schmidt Obere Str. 57 Frankfurt 12209 Germany
2 Ana Trujillo Emparedados y helados Juan Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Juan Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

Задание «Компьютерный магазин»

SQL table 2. Используя сервис http://dbdesigner.net/ и команду создайте при помощи языка SQL базу данных «Компьютерный магазин» со следующими таблицами и связями между их полями:

Дополните код (для таблиц и ):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CREATE TABLE `Product` (
	`Номер` INT(11) NOT NULL AUTO_INCREMENT,
	`Производитель` VARCHAR(35),
	`Тип` VARCHAR(35),
	PRIMARY KEY (`Номер`)
);
 
CREATE TABLE `Printer` (
	`code` BIGINT NOT NULL,
	`Номер` BIGINT NOT NULL,
	`Цветной` bool,
	`Тип` VARCHAR(24) DEFAULT 'Лазерный',
	`Цена` INT,
	PRIMARY KEY (`code`)
);

* Сохраните сгенерированный код базы данных для дальнейшей работы ()

SQL table 3. Заполните созданную базу данных, чтобы в дальнейшем иметь возможность создавать запросы к ней. Для заполнения используйте сервис :
— создайте новую базу данных;
— через SQL создайте таблицы базы данных, использовав код из предыдущего задания (вставить код в окно для SQL запросов интерфейса phpMyAdmin);
— заполните таблицы данными:Таблица Продукт:

Номер Производитель Тип
1 Америка Компьютер
2 Африка Компьютер
3 Россия Компьютер
4 Россия Принтер
5 Япония Принтер
6 Америка Компьютер
7 Россия Ноутбук
8 Китай Принтер
9 Америка Компьютер
10 Китай Ноутбук

Таблица PC:

code Номер Скорость Память HD СкоростьСчит Цена
1 1 1100 1000 500 52 20000
2 2 1500 2000 500 52 25000
3 3 1500 2000 1000 49 28000
4 6 2000 2500 1000 52 29000
5 9 2000 3000 1000 52 32000

Таблица Ноутбук:

code Номер Скорость Память HD Экран Цена
1 7 2000 2000 512 19 25000
2 10 2000 3000 1000 24 35000

Таблица Принтер:

code Номер Цветной Тип Цена
1 4 1 Лазерный 15000
2 5 Струйный 2000
3 8 Лазерный 4000

* При отсутствии возможности работы с phpMyAdmin, воспользуйтесь сервисом sql fiddle.

«Курс SQL, базы данных, Oracle» от YouTube-канала Prime Soft

Пройти курс

Длительность: 18 видео

Описание курса

Небольшой курс, рассматривающий использование Oracle — интегрированной среды разработки, использующей в своей работе язык запросов SQL. Благодаря ей вы сможете администрировать базы данных с использованием бесплатного программного обеспечения. Видео длятся не более 30 минут и охватывают отдельные аспекты использования SQL. Автор канала специализируется именно на обучении данному языку запросов, благодаря чему вы можете рассчитывать на получение качественного материала.

Плюсы:

  • Узкая специализация канала;
  • Разбор среды разработки Oracle.

Минусы:

Описание

21 век — век информации. Она окружает нас везде: дома, на работе, в машине, в метро. Информация хранится в базах данных в удобном для компьютера виде. Какие бы приложения вы не тестировали: десктопные, веб или мобильные, банковские системы или игры — вам нужно будет получать информацию из базы данных. Для этого используют специальный язык запросов — SQL (Structure Query Language). Базовые знания SQL сейчас требуют даже на вакансию джуниор-тестировщика.

Тренинг рассчитан на людей, знакомых с основами тестирования и желающих научиться работе с базами данных. Мы расскажем, как устроена база данных, как в ней хранятся данные и как их получать, начиная с самых простых запросов к одной таблице. Те, кто самостоятельно начинал знакомиться с SQL смогут структурировать свои знания, узнать об особенностях работы с разными СУБД и повысить мастерство написания сложных запросов к нескольким таблицам, используя внешние объединения по любым условиям.

На тренинге вы научитесь применять SQL в различных аспектах тестирования — для поиска интересных для проверки кейсов в БД, для разбиения данных на классы эквивалентности в зависимости от типа, с которым данные хранятся в БД, поймете, какие стандартные ошибки делают программисты при подготовке запросов, научитесь добавлять нужные значения в существующие таблицы и создавать новые. После курса вы сможете писать запросы любой сложности к одной, двум и десятку таблиц с использованием джойнов, группировок и подзапросов.

Программа тренинга

Лекция 0 — Вводная. Строение баз данных и организационные вопросы.

  • Структура тренинга и орг.вопросы.
  • Основы устройства реляционных БД
  • Общие сведения про SQL:
    • Определение, отличие от других языков.
    • История создания SQL
    • Стандарты языка SQL, их плюсы и минусы

Модуль I

Лекция 1 — Исследование БД и структура запроса SELECT.

  • Установка Oracle XE и SQL Workbench
  • Структура запроса Select
  • Простейшие запросы к одной таблице
  • Понятие схемы пользователя
  • Исследование БД с помощью служебных таблиц
  • Применение знаний о структуре БД к тестированию
  • Работа с ошибками при составлении запроса

Лекция 2 — Типы данных, применяемые в SQL

  • Типы для хранения чисел.
  • Типы данных для хранения строк
  • Типы данных для хранения дат и времени
  • Специальные типы данных для хранения xml, идентификаторов и объектов.
  • Типичные ошибки, выявляемые для разных типов данных при тестировании

Модуль II

Лекция 3 — Выбор данных из одной таблицы с разными условиями

  • Задание условий для разных типов данных: числа, даты, строки в разной кодировке.
  • Условие LIKE и использование регулярных выражений в функции regexp_like
  • Значение NULL и работа с ним в запросе. Функция NVL
  • Функции конвертации типов данных
  • Объединение условий

Лекция 4 — Выбор данных из одной таблицы с разными условиями

  • Функции, применяемые для разных типов данных
  • Работа с датами и временем

Модуль III

Лекция 5 — Выбор данных из нескольких таблиц

  • Объединение таблиц в запросе через where
  • Разные типы JOIN
  • Отличия задания условий через Where и Join
  • Задание псевдонимов для таблиц

Лекция 6 — Примеры решения сложных задач на объединение нескольких таблиц

  • Объединение таблиц по неравенству
  • Объединение таблицы с самой собой
  • Типы сортировки
  • Сортировка колонок, содержащих значения NULL
  • Возможные ошибки приложений при добавлении сортировки

Модуль IV

Лекция 7 — Запросы с подзапросами

  • Работа с операторами In и Exist
  • Использование подзапросов

Лекция 8 — Работа с результатами запроса

  • Вывод уникальных значений через DISTINCT
  • Объединение и пересечение результатов. Union, union all, intersect, minus
  • Условный вывод данных с помощью оператора CASE

Модуль V

Лекция 9 — Запросы для анализа данных и подготовки отчетов

  • Операции над выбираемыми данными
  • Группировка данных. Запросы с GROUP BY и HAVING.
  • Отбор значимых для тестирования данных.

Лекция 10 — Изменение данных

  • Оператор Update
  • Операторы TCL — commit и rollback
  • Понятие ограничений и работа с ними

Модуль VI

Лекция 11 — Вставка и удаление данных

  • Оператор Insert
  • Оператор Delete

Лекция 12 — Работа со структурой БД и управление правами доступа

  • Основные операторы DCL. Управление правами доступа
  • Основные операторы DDL. Задание и изменение структуры БД.

Условия

Стоимость участия для физических лиц: 13 000 рублей за весь курс.

Стоимость участия для юридических лиц: 15 500 рублей за весь курс за одного участника. При регистрации от 3-х участников на один курс действует 15% скидка.

Информация для физических лиц

Организатор мероприятия: ИП Абдюшев Павел Рашитович, ИНН 503500793903, ОГРНИП 317505300051323

Услуги оказываются на основании публичного договора оферты. Ознакомиться с договором можно ЗДЕСЬ.

Все реквизиты для оплаты вы получите на почту после того, как нажмете кнопку справа Записаться и заполните все поля. Если Вы не получили письмо в течение рабочего дня, просто отправьте сообщение на trainings@software-testing.ru

Если у Вас есть какие-то вопросы, их можно задать по адресу указанному выше.

Информация для юридических лиц:

По вопросам оформления договора и выставления счета на оплату обращайтесь по адресу trainings@software-testing.ru

Обратите внимание, что при постоплате стоимость тренинга увеличивается на 25%

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector