Наверняка при просмотре вакансий или во время общения с коллегами вы могли заметить, что сейчас все чаще и чаще знание языка SQL указывается в графе “Будет бонусом” или даже в необходимых навыках, а на практике его применяют самые разные специалисты: разработчики, тестировщики, аналитики, проджект-менеджеры и т.п. А нужен ли он именно вам? Давайте рассмотрим вместе, что такое SQL, кому и для чего может пригодится его знание в серии статей “Делаем SQL конкурентным преимуществом”.
SQL расшифровывается как Structured Query Language - язык структурированных запросов. Он считается декларативным языком: от английского declaration - заявление. То есть, мы не описываем как что-то должно быть выполнено, мы четко ставим задачу - что именно должно быть выполнено, а программа считывает и выдает результат.
SQL работает с реляционными базами данных - и для лучшего понимания, что же это такое, давайте разобьем это понятие на отдельные составляющие.
Если мы увеличиваем количество столбцов, то делаем таблицу более подробной, а если строк - то увеличиваем количество данных.
И теперь можно изменить предыдущую таблицу, тем самым создав отношение между таблицей “Перечень” и “Информация о курсах SkillsUp”:
Итак, для чего нужен SQL? С помощью языка SQL пишутся команды-запросы, благодаря которым вы можете выполнять необходимые манипуляции с реляционными базами данных.
Команды, в свою очередь, состоят из операторов, которые распределены по 4 основным языкам:
Еще один термин, который необходимо знать при изучении SQL. Мы с вами разобрались, что существуют базы данных, в которых хранятся данные, структурированные определенным образом. Но для создания и работы с ними необходима Система Управления Базами Данных - СУБД. Их можно разделить на SQL и NoSQL, то есть для работы с первыми мы используем язык SQL, а для работы со вторыми - язык графических элементов.
Примеры SQL-баз данных: Oracle, MySQL, Microsoft SQL Server, PostgreSQL.
Примеры NoSQL-баз данных: MongoDB, DB2, Microsoft Access, Cassandra, Redis, Elasticsearch.
Давайте посмотрим немного под другим углом на примере, который привычен и понятен любому. База данных - это значения/информация, которая разделяется по типам и логическому назначению. Пример - больничная картотека. Пациенты разделены по отделениям больницы, в каждом из которых есть сортировка по ФИО + другая сопутствующая информация (дата рождения, диагноз и т.д.).
СУБД - это инструмент для работы с базой. С его помощью можно читать данные из базы, обновлять их, удалять или добавлять новые. Можно менять настройки, модифицировать и т.д. То есть, поддержка, работа и развитие базы данных выполняется с помощью СУБД. Если больничная картотека - это база данных, то СУБД здесь - это работник регистратуры, который по твоему запросу с этой информацией что-то делает. И то, как ты общаешься с ним - это и есть SQL (если ты пишешь свой запрос на листочке в формате - ФИО + год рождения + диагноз) или же язык графических элементов (когда ты оформляешь просьбу своими словами).
Немного разобрались? А уже в следующей статье мы подробнее поговорим с вами о разных СУБД для SQL и разберемся, кому же будет полезно знание языка SQL.