0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p><strong>В статье рассказываем, что такое SQL, зачем он нужен и чем отличается от NoSQL, а также кто использует этот язык и сколько зарабатывают специалисты со знанием SQL.</strong></p>
1
<p><strong>В статье рассказываем, что такое SQL, зачем он нужен и чем отличается от NoSQL, а также кто использует этот язык и сколько зарабатывают специалисты со знанием SQL.</strong></p>
2
<blockquote><p>В написании статьи принял участие Андрей Мохов, кандидат технических наук, исследователь в АО "ИнфоТеКС", преподаватель в НИУ "МЭИ" и Александр Леоненко, автор<a>курсов по SQL</a>в Хекслете</p>
2
<blockquote><p>В написании статьи принял участие Андрей Мохов, кандидат технических наук, исследователь в АО "ИнфоТеКС", преподаватель в НИУ "МЭИ" и Александр Леоненко, автор<a>курсов по SQL</a>в Хекслете</p>
3
</blockquote><h2>Содержание</h2>
3
</blockquote><h2>Содержание</h2>
4
<ul><li><a>Что такое SQL</a></li>
4
<ul><li><a>Что такое SQL</a></li>
5
<li><a>Где используют SQL</a></li>
5
<li><a>Где используют SQL</a></li>
6
<li><a>Особенности SQL</a></li>
6
<li><a>Особенности SQL</a></li>
7
<li><a>Кто использует SQL и сколько зарабатывают такие специалисты</a></li>
7
<li><a>Кто использует SQL и сколько зарабатывают такие специалисты</a></li>
8
<li><a>Какие есть операторы в SQL и для чего они нужны</a></li>
8
<li><a>Какие есть операторы в SQL и для чего они нужны</a></li>
9
<li><a>Что такое СУБД и как они работают</a></li>
9
<li><a>Что такое СУБД и как они работают</a></li>
10
<li><a>Какие виды СУБД бывают и чем они различаются</a></li>
10
<li><a>Какие виды СУБД бывают и чем они различаются</a></li>
11
<li><a>Легко ли изучить SQL</a></li>
11
<li><a>Легко ли изучить SQL</a></li>
12
<li><a>С чего начать изучать SQL</a></li>
12
<li><a>С чего начать изучать SQL</a></li>
13
</ul><h2>Что такое SQL</h2>
13
</ul><h2>Что такое SQL</h2>
14
<p>Для работы привычных нам приложений нужны данные, которые необходимо где-то хранить. Самый удобный способ хранения - это базы данных (БД). Чтобы работать с БД, искать и изменять в них нужные данные, разработчики используют язык SQL.</p>
14
<p>Для работы привычных нам приложений нужны данные, которые необходимо где-то хранить. Самый удобный способ хранения - это базы данных (БД). Чтобы работать с БД, искать и изменять в них нужные данные, разработчики используют язык SQL.</p>
15
<p>SQL (Structured Query Language, или язык структурированных запросов) - это язык программирования, который позволяет делать запросы к данным, фильтровать и сортировать информацию с помощью этих запросов и работать со структурой самой базы.</p>
15
<p>SQL (Structured Query Language, или язык структурированных запросов) - это язык программирования, который позволяет делать запросы к данным, фильтровать и сортировать информацию с помощью этих запросов и работать со структурой самой базы.</p>
16
<h2>Где используют SQL</h2>
16
<h2>Где используют SQL</h2>
17
<p>SQL используют везде, где нужно хранить информацию: в онлайн-библиотеках, интернет-магазинах, государственных сервисах, банках, чат-ботах, мобильных приложениях и много где еще.</p>
17
<p>SQL используют везде, где нужно хранить информацию: в онлайн-библиотеках, интернет-магазинах, государственных сервисах, банках, чат-ботах, мобильных приложениях и много где еще.</p>
18
<p>Компании используют SQL для управления данными - пользовательскими профилями, контентом, товарами в интернет-магазинах. Многие организации также используют SQL для управления данными о клиентах, заказах, инвентаре и финансовых операциях. Это помогает им проводить анализ и принимать стратегические решения.</p>
18
<p>Компании используют SQL для управления данными - пользовательскими профилями, контентом, товарами в интернет-магазинах. Многие организации также используют SQL для управления данными о клиентах, заказах, инвентаре и финансовых операциях. Это помогает им проводить анализ и принимать стратегические решения.</p>
19
<p>Хекслет тоже хранит данные о своих курсах и пользователях в базах. Вот так, например, выглядит база данных зарегистрированных студентов (все имена вымышлены):</p>
19
<p>Хекслет тоже хранит данные о своих курсах и пользователях в базах. Вот так, например, выглядит база данных зарегистрированных студентов (все имена вымышлены):</p>
20
<p>Чтобы разобраться, зачем нужен SQL и как он упрощает жизнь разработчикам, давайте представим работу одного из этих сервисов. Пусть это будет приложение о питании с функцией подсчета калорий, белков, жиров и углеводов и учета приема пищи: по дням недели и времени, а также по размеру порции.</p>
20
<p>Чтобы разобраться, зачем нужен SQL и как он упрощает жизнь разработчикам, давайте представим работу одного из этих сервисов. Пусть это будет приложение о питании с функцией подсчета калорий, белков, жиров и углеводов и учета приема пищи: по дням недели и времени, а также по размеру порции.</p>
21
<p>Данные этого приложения будут храниться в двух таблицах: в первой мы посчитаем калорийность, а во вторую запишем время приема пищи и граммовку.</p>
21
<p>Данные этого приложения будут храниться в двух таблицах: в первой мы посчитаем калорийность, а во вторую запишем время приема пищи и граммовку.</p>
22
<p>SQL придет на помощь тогда, когда мы захотим, к примеру, проанализировать среднюю калорийность завтраков и обедов. Для этого мы просто сделаем запрос к базе данных, и программа предоставит нам всю необходимую информацию.</p>
22
<p>SQL придет на помощь тогда, когда мы захотим, к примеру, проанализировать среднюю калорийность завтраков и обедов. Для этого мы просто сделаем запрос к базе данных, и программа предоставит нам всю необходимую информацию.</p>
23
<p>Если бы мы не использовали SQL, нам пришлось бы самим вычислять среднюю калорийность и создавать для этого дополнительные строки в таблицах. В этом плане SQL значительно экономит время и силы разработчикам.</p>
23
<p>Если бы мы не использовали SQL, нам пришлось бы самим вычислять среднюю калорийность и создавать для этого дополнительные строки в таблицах. В этом плане SQL значительно экономит время и силы разработчикам.</p>
24
<h2>Особенности SQL</h2>
24
<h2>Особенности SQL</h2>
25
<ol><li>В сравнении с другими языками программирования,<strong>SQL понятный и обладает простым синтаксисом</strong>- комплексом правил, который объясняет, как писать код. Если у вас достаточный уровень английского, вы прочтете его почти как обычный текст. Или, как минимум, без особого труда догадаетесь, о чем речь.</li>
25
<ol><li>В сравнении с другими языками программирования,<strong>SQL понятный и обладает простым синтаксисом</strong>- комплексом правил, который объясняет, как писать код. Если у вас достаточный уровень английского, вы прочтете его почти как обычный текст. Или, как минимум, без особого труда догадаетесь, о чем речь.</li>
26
<li>В императивных языках программирования, таких как Python или JavaScript, мы пишем последовательность действий, алгоритм команд. Но<strong>SQL - декларативный язык</strong>, и на нем мы прописываем, что хотим получить**.** То есть обозначаем не путь, а результат. А программа, которая выполняет этот запрос, сама получает и возвращает нужные нам данные, модифицирует их или выполняет другую заданную команду.</li>
26
<li>В императивных языках программирования, таких как Python или JavaScript, мы пишем последовательность действий, алгоритм команд. Но<strong>SQL - декларативный язык</strong>, и на нем мы прописываем, что хотим получить**.** То есть обозначаем не путь, а результат. А программа, которая выполняет этот запрос, сама получает и возвращает нужные нам данные, модифицирует их или выполняет другую заданную команду.</li>
27
<li>Существует два типа баз данных: нереляционный (NoSQL) и реляционный (SQL). В первом варианте базы данных информация хранится без структурированности и четких связей.<strong>В SQL все иначе - данные расположены в таблицах по строкам, где каждая ячейка введена по шаблону</strong>.</li>
27
<li>Существует два типа баз данных: нереляционный (NoSQL) и реляционный (SQL). В первом варианте базы данных информация хранится без структурированности и четких связей.<strong>В SQL все иначе - данные расположены в таблицах по строкам, где каждая ячейка введена по шаблону</strong>.</li>
28
</ol><h2>Кто использует SQL и сколько зарабатывают такие специалисты</h2>
28
</ol><h2>Кто использует SQL и сколько зарабатывают такие специалисты</h2>
29
<p>SQL - основной инструмент в работе с базами данных. Поэтому владение SQL - навык, который необходим во многих сферах: администраторам базы данных или DBA (Database administrator), дата-аналитикам, продуктовым маркетологам, менеджерам по продажам, тестировщикам, программистам и многим другим. То есть всем, кто тоже отчасти опирается в своей работе на данные.</p>
29
<p>SQL - основной инструмент в работе с базами данных. Поэтому владение SQL - навык, который необходим во многих сферах: администраторам базы данных или DBA (Database administrator), дата-аналитикам, продуктовым маркетологам, менеджерам по продажам, тестировщикам, программистам и многим другим. То есть всем, кто тоже отчасти опирается в своей работе на данные.</p>
30
<p>Причина такой популярности простая: данные часто хранятся в базах данных, и самый родной для них язык - это SQL. И если нужно, например, проанализировать динамику продаж, то самостоятельно получить всю необходимую информацию с помощью SQL будет довольно быстро.</p>
30
<p>Причина такой популярности простая: данные часто хранятся в базах данных, и самый родной для них язык - это SQL. И если нужно, например, проанализировать динамику продаж, то самостоятельно получить всю необходимую информацию с помощью SQL будет довольно быстро.</p>
31
<p>При всей своей простоте, в мире пока нет аналога, способного полноценно заменить SQL. Поэтому специалисты, которые им владеют, будут востребованы на рынке труда еще долгие годы.</p>
31
<p>При всей своей простоте, в мире пока нет аналога, способного полноценно заменить SQL. Поэтому специалисты, которые им владеют, будут востребованы на рынке труда еще долгие годы.</p>
32
<p>По<a>информации</a>сайта hh.ru, в августе 2023 года было представлено более 550 активных вакансий для администраторов базы данных. Джуниору DBA компании предлагают от 60 тысяч рублей, мидлу - в диапазоне 80 - 100 тысяч. А сеньор может претендовать на 150 тысяч рублей и выше.</p>
32
<p>По<a>информации</a>сайта hh.ru, в августе 2023 года было представлено более 550 активных вакансий для администраторов базы данных. Джуниору DBA компании предлагают от 60 тысяч рублей, мидлу - в диапазоне 80 - 100 тысяч. А сеньор может претендовать на 150 тысяч рублей и выше.</p>
33
<p>При этом SQL-разработчикам предлагают в среднем от 100 тысяч рублей по России. Для<a>сеньора</a>SQL Developer зарплата будет начинаться уже от 200 тысяч.</p>
33
<p>При этом SQL-разработчикам предлагают в среднем от 100 тысяч рублей по России. Для<a>сеньора</a>SQL Developer зарплата будет начинаться уже от 200 тысяч.</p>
34
<p>Конечно, это средние значения по стране и все зависит от региона работы. Однако даже по этим цифрам видно - специалистам со знанием SQL в России не только предлагают конкурентоспособную заработную плату, но и варианты для развития.</p>
34
<p>Конечно, это средние значения по стране и все зависит от региона работы. Однако даже по этим цифрам видно - специалистам со знанием SQL в России не только предлагают конкурентоспособную заработную плату, но и варианты для развития.</p>
35
<h2>Какие есть операторы в SQL и для чего они нужны</h2>
35
<h2>Какие есть операторы в SQL и для чего они нужны</h2>
36
<p>Предположим, что мы начинаем работать с реляционной БД, где вся информация располагается в таблицах по строкам. Первая вещь, которая нам нужна, - определить, как мы будем хранить эти данные. И это наш базовый слой операторов SQL, которые помогают в проектировании баз данных:</p>
36
<p>Предположим, что мы начинаем работать с реляционной БД, где вся информация располагается в таблицах по строкам. Первая вещь, которая нам нужна, - определить, как мы будем хранить эти данные. И это наш базовый слой операторов SQL, которые помогают в проектировании баз данных:</p>
37
<p>CREATE DATABASE - создает базу данных.</p>
37
<p>CREATE DATABASE - создает базу данных.</p>
38
<p>CREATE TABLE - создает новую таблицу внутри базы данных.</p>
38
<p>CREATE TABLE - создает новую таблицу внутри базы данных.</p>
39
<p>DROP DATABASE - удаляет базу данных.</p>
39
<p>DROP DATABASE - удаляет базу данных.</p>
40
<p>DROP TABLE - удаляет таблицу в базе данных.</p>
40
<p>DROP TABLE - удаляет таблицу в базе данных.</p>
41
<p>Есть также USE, который указывает, в какой именно базе данных будет проходить дальнейшая работа.</p>
41
<p>Есть также USE, который указывает, в какой именно базе данных будет проходить дальнейшая работа.</p>
42
<p>На этом этапе мы решаем, таблицы с какой информацией нам нужны. Если это персональные данные, то названиями колонок и строк в таблице могут быть: имя и фамилия, номер телефона, возраст. В случае с информацией о товарах - название, цена, тип и прочее. Все зависит от наших запросов.</p>
42
<p>На этом этапе мы решаем, таблицы с какой информацией нам нужны. Если это персональные данные, то названиями колонок и строк в таблице могут быть: имя и фамилия, номер телефона, возраст. В случае с информацией о товарах - название, цена, тип и прочее. Все зависит от наших запросов.</p>
43
<p>Теперь, когда мы создали таблички, нужно как-то добавлять туда данные, читать их, удалять и изменять. Это следующая группа операторов SQL:</p>
43
<p>Теперь, когда мы создали таблички, нужно как-то добавлять туда данные, читать их, удалять и изменять. Это следующая группа операторов SQL:</p>
44
<p>INSERT - добавляет данные в таблицу. Работает в паре с INTO, который указывает на конкретную таблицу.</p>
44
<p>INSERT - добавляет данные в таблицу. Работает в паре с INTO, который указывает на конкретную таблицу.</p>
45
<p>DELETE - удаляет данные из таблицы. Работает в союзе с FROM, который конкретизирует таблицу. Например, команда DELETE FROM USERS удалит все строки в таблице USERS.</p>
45
<p>DELETE - удаляет данные из таблицы. Работает в союзе с FROM, который конкретизирует таблицу. Например, команда DELETE FROM USERS удалит все строки в таблице USERS.</p>
46
<p>SELECT - определяет список столбцов: вычисляемых и существующих. Если нужно выбрать все столбцы (их еще называют атрибуты), то пишется SELECT *. А после FROM указывается название таблицы.</p>
46
<p>SELECT - определяет список столбцов: вычисляемых и существующих. Если нужно выбрать все столбцы (их еще называют атрибуты), то пишется SELECT *. А после FROM указывается название таблицы.</p>
47
<p>UPDATE - обновляет данные. Оператор указывает на саму таблицу, а следом применяет SET, после которого мы вводим новые значения для атрибутов. А чтобы обозначить конкретные строки, необходимо использовать WHERE.</p>
47
<p>UPDATE - обновляет данные. Оператор указывает на саму таблицу, а следом применяет SET, после которого мы вводим новые значения для атрибутов. А чтобы обозначить конкретные строки, необходимо использовать WHERE.</p>
48
<p>JOIN - объединяет значения нескольких таблиц. Он бывает: внутренний INNER и внешний OUTER. Последний включает в себя правый RIGHT OUTER, левый LEFT OUTER и полный FULL OUTER JOIN.</p>
48
<p>JOIN - объединяет значения нескольких таблиц. Он бывает: внутренний INNER и внешний OUTER. Последний включает в себя правый RIGHT OUTER, левый LEFT OUTER и полный FULL OUTER JOIN.</p>
49
<p>ORDER BY сортирует результаты запроса. По умолчанию сортировка строк в таблице проводится в порядке возрастания. А чтобы сделать ее по убыванию, нужно добавить DESC.</p>
49
<p>ORDER BY сортирует результаты запроса. По умолчанию сортировка строк в таблице проводится в порядке возрастания. А чтобы сделать ее по убыванию, нужно добавить DESC.</p>
50
<p>Еще есть операторы контроля доступа. Представьте ситуацию: вы работаете в большой компании, где только несколько бухгалтеров, администраторов баз данных, могут смотреть информацию и делать запись о зарплатах. Если вам понадобится доступ к этой базе с зарплатами, то администраторы могут дать вам право ее просматривать с помощью операторов доступа GRANT, REVOKE, DENY.</p>
50
<p>Еще есть операторы контроля доступа. Представьте ситуацию: вы работаете в большой компании, где только несколько бухгалтеров, администраторов баз данных, могут смотреть информацию и делать запись о зарплатах. Если вам понадобится доступ к этой базе с зарплатами, то администраторы могут дать вам право ее просматривать с помощью операторов доступа GRANT, REVOKE, DENY.</p>
51
<p>Мы разобрали основные и самые базовые операторы при работе с данными в таблицах. Есть и другие, вспомогательные, которые конкретизируют работу в системе. Подробнее о них мы говорим на треке<a>SQL для разработчиков</a>- пройдите его, чтобы узнать об операторах более подробно.</p>
51
<p>Мы разобрали основные и самые базовые операторы при работе с данными в таблицах. Есть и другие, вспомогательные, которые конкретизируют работу в системе. Подробнее о них мы говорим на треке<a>SQL для разработчиков</a>- пройдите его, чтобы узнать об операторах более подробно.</p>
52
<h2>Что такое СУБД и как они работают</h2>
52
<h2>Что такое СУБД и как они работают</h2>
53
<p>Системы управления базами данных или сокращенно СУБД - это программы, которые позволяют создавать базы данных, администрировать их, а также обеспечивают надежность хранения данных и работу с ними.</p>
53
<p>Системы управления базами данных или сокращенно СУБД - это программы, которые позволяют создавать базы данных, администрировать их, а также обеспечивают надежность хранения данных и работу с ними.</p>
54
<p>Другими словами, СУБД - это посредник между пользователем и базой данных. Он получает SQL-запрос и переводит его в сложные операции, необходимые для выполнения задачи. Именно СУБД осуществляет введенную нами команду удаления, сортировки, сохранения и прочего.</p>
54
<p>Другими словами, СУБД - это посредник между пользователем и базой данных. Он получает SQL-запрос и переводит его в сложные операции, необходимые для выполнения задачи. Именно СУБД осуществляет введенную нами команду удаления, сортировки, сохранения и прочего.</p>
55
<p>СУБД работает примерно так:</p>
55
<p>СУБД работает примерно так:</p>
56
<blockquote><p>Пользователь отправляет SQL-запрос → Система управления базами данных обрабатывает его → Пользователь получает необходимые данные</p>
56
<blockquote><p>Пользователь отправляет SQL-запрос → Система управления базами данных обрабатывает его → Пользователь получает необходимые данные</p>
57
</blockquote><p>Один из примеров использования СУБД - онлайн-магазины. В них СУБД помогает хранить и обрабатывать данные о товарах, клиентах, заказах и другой связанной информации.</p>
57
</blockquote><p>Один из примеров использования СУБД - онлайн-магазины. В них СУБД помогает хранить и обрабатывать данные о товарах, клиентах, заказах и другой связанной информации.</p>
58
<p>Если бы мы были продавцами, и мы захотели бы найти фиолетовые носки с рюшами 43 размера, искать вручную пришлось бы долго. Плюс в реальной жизни нам будет нужно:</p>
58
<p>Если бы мы были продавцами, и мы захотели бы найти фиолетовые носки с рюшами 43 размера, искать вручную пришлось бы долго. Плюс в реальной жизни нам будет нужно:</p>
59
<ul><li>Скрыть товар с продаж на период довоза</li>
59
<ul><li>Скрыть товар с продаж на период довоза</li>
60
<li>Ввести новые размерные сетки и цвета</li>
60
<li>Ввести новые размерные сетки и цвета</li>
61
<li>Переписать состав продуктов действующих товаров</li>
61
<li>Переписать состав продуктов действующих товаров</li>
62
<li>Удалить распроданные наименования и многое другое.</li>
62
<li>Удалить распроданные наименования и многое другое.</li>
63
</ul><p>А если в таблице произойдет какой-то сбой или не сохранятся изменения? Да, все пришлось бы делать заново.</p>
63
</ul><p>А если в таблице произойдет какой-то сбой или не сохранятся изменения? Да, все пришлось бы делать заново.</p>
64
<p>С системой управления базами данных такие проблемы минимизированы. Система берет управление на себя и выполняет все операции очень эффективно. Благодаря СУБД даже новички-программисты могут создавать приложения для работы с данными.</p>
64
<p>С системой управления базами данных такие проблемы минимизированы. Система берет управление на себя и выполняет все операции очень эффективно. Благодаря СУБД даже новички-программисты могут создавать приложения для работы с данными.</p>
65
<p>Система управления базами данных дает много преимуществ:</p>
65
<p>Система управления базами данных дает много преимуществ:</p>
66
<ul><li>Позволяет использовать данные в базе данных нескольким пользователям или приложениям одновременно.</li>
66
<ul><li>Позволяет использовать данные в базе данных нескольким пользователям или приложениям одновременно.</li>
67
<li>Обеспечивает безопасность и надежность хранения данных, дает возможность разграничивать права доступа.</li>
67
<li>Обеспечивает безопасность и надежность хранения данных, дает возможность разграничивать права доступа.</li>
68
<li>Минимизирует несогласованность данных. Такое может возникнуть, когда в одной компании несколько менеджеров хранит в базе данных контакты партнеров с разными наименованиями. Это как если бы вы записали в книге контактов один и тот же номер телефона под двумя разными именами.</li>
68
<li>Минимизирует несогласованность данных. Такое может возникнуть, когда в одной компании несколько менеджеров хранит в базе данных контакты партнеров с разными наименованиями. Это как если бы вы записали в книге контактов один и тот же номер телефона под двумя разными именами.</li>
69
<li>Увеличивает производительность пользователя. Это возможно благодаря довольно легкому пути: инструменты для поиска или изменения данных помогают в короткие сроки выполнить необходимые команды.</li>
69
<li>Увеличивает производительность пользователя. Это возможно благодаря довольно легкому пути: инструменты для поиска или изменения данных помогают в короткие сроки выполнить необходимые команды.</li>
70
</ul><h2>Какие виды СУБД бывают и чем они различаются</h2>
70
</ul><h2>Какие виды СУБД бывают и чем они различаются</h2>
71
<p>Существует много видов и классификаций СУБД. И каждый из них подходит для разных типов баз данных. Но хорошая новость в том, что базовый уровень SQL везде одинаковый. И если научитесь основам языка, вам будет легче перейти с одной СУБД на другую. Нельзя сказать, что они идентичны, но очень похожи.</p>
71
<p>Существует много видов и классификаций СУБД. И каждый из них подходит для разных типов баз данных. Но хорошая новость в том, что базовый уровень SQL везде одинаковый. И если научитесь основам языка, вам будет легче перейти с одной СУБД на другую. Нельзя сказать, что они идентичны, но очень похожи.</p>
72
<p>Например, БД классифицируют по количеству пользователей, типу хранимых данных, их структурированности или месту расположения. Давайте разберем по порядку.</p>
72
<p>Например, БД классифицируют по количеству пользователей, типу хранимых данных, их структурированности или месту расположения. Давайте разберем по порядку.</p>
73
<p><strong>По количеству пользователей:</strong></p>
73
<p><strong>По количеству пользователей:</strong></p>
74
<ul><li>Однопользовательская, в которой одновременно может работать только один специалист</li>
74
<ul><li>Однопользовательская, в которой одновременно может работать только один специалист</li>
75
<li>Многопользовательская - в ней одновременно работает большое количество пользователей.</li>
75
<li>Многопользовательская - в ней одновременно работает большое количество пользователей.</li>
76
</ul><p><strong>По типу языка запросов:</strong></p>
76
</ul><p><strong>По типу языка запросов:</strong></p>
77
<ul><li>С поддержкой SQL, в которой данные хранятся в таблицах</li>
77
<ul><li>С поддержкой SQL, в которой данные хранятся в таблицах</li>
78
<li>С поддержкой NoSQL - нереляционные СУБД, где действуют языки запросов, основанные на программировании и предназначенные для работы с большими БД.</li>
78
<li>С поддержкой NoSQL - нереляционные СУБД, где действуют языки запросов, основанные на программировании и предназначенные для работы с большими БД.</li>
79
</ul><p><strong>По принципу хранения базы данных:</strong></p>
79
</ul><p><strong>По принципу хранения базы данных:</strong></p>
80
<ul><li>Централизованная (локальная), где все данные расположены на одном сервере</li>
80
<ul><li>Централизованная (локальная), где все данные расположены на одном сервере</li>
81
<li>Распределенная, в которой данные хранятся на разных серверах, в том числе и облачном (Yandex Object Storage и прочие).</li>
81
<li>Распределенная, в которой данные хранятся на разных серверах, в том числе и облачном (Yandex Object Storage и прочие).</li>
82
</ul><p><strong>По видам информации, которую можно хранить в базе данных:</strong></p>
82
</ul><p><strong>По видам информации, которую можно хранить в базе данных:</strong></p>
83
<ul><li>Специализированные - содержат данные по конкретной теме</li>
83
<ul><li>Специализированные - содержат данные по конкретной теме</li>
84
<li>Универсальные - хранят данные из разных областей.</li>
84
<li>Универсальные - хранят данные из разных областей.</li>
85
</ul><p><strong>По типу использования базы данных во времени:</strong></p>
85
</ul><p><strong>По типу использования базы данных во времени:</strong></p>
86
<ul><li>Оперативная (транзакционная, производственная) - для повседневных операций</li>
86
<ul><li>Оперативная (транзакционная, производственная) - для повседневных операций</li>
87
<li>Аналитическая - для хранения и расширенного анализа данных, к примеру, бизнес показателей.</li>
87
<li>Аналитическая - для хранения и расширенного анализа данных, к примеру, бизнес показателей.</li>
88
</ul><p><strong>По степени структурированности данных:</strong></p>
88
</ul><p><strong>По степени структурированности данных:</strong></p>
89
<ul><li>Неструктурированные хранятся в необработанном виде и формате</li>
89
<ul><li>Неструктурированные хранятся в необработанном виде и формате</li>
90
<li>Полуструктурированные обработаны лишь отчасти</li>
90
<li>Полуструктурированные обработаны лишь отчасти</li>
91
<li>Структурированные - отформатированный вариант неструктурированных данных.</li>
91
<li>Структурированные - отформатированный вариант неструктурированных данных.</li>
92
</ul><p><strong>По типу хранения, запроса и обработки данных в базе:</strong></p>
92
</ul><p><strong>По типу хранения, запроса и обработки данных в базе:</strong></p>
93
<ul><li>Встраиваемая - ее внедряют в приложение и используют для управления БД внутри него</li>
93
<ul><li>Встраиваемая - ее внедряют в приложение и используют для управления БД внутри него</li>
94
<li>Клиент-серверная - это когда база данных и СУБД хранятся на едином сервере, к которому подают запросы разные пользователи (например, интернет-магазин, где покупатели подбирают товары по фильтрам)</li>
94
<li>Клиент-серверная - это когда база данных и СУБД хранятся на едином сервере, к которому подают запросы разные пользователи (например, интернет-магазин, где покупатели подбирают товары по фильтрам)</li>
95
<li>Файл-серверная - вариант, когда БД хранится на одном сервере, а СУБД установлена на устройствах, с которых пользователи отправляют запросы к базе данных (например, CRM на корпоративных сервисах).</li>
95
<li>Файл-серверная - вариант, когда БД хранится на одном сервере, а СУБД установлена на устройствах, с которых пользователи отправляют запросы к базе данных (например, CRM на корпоративных сервисах).</li>
96
</ul><p>Еще системы управления базами данных делятся на платные и бесплатные, кроссплатформенные или те, которые работают, например, только на Linux или мобильных устройствах. Есть те, что легко встраиваются в приложения, и другие - большие и с целым комплексом операций для установки.</p>
96
</ul><p>Еще системы управления базами данных делятся на платные и бесплатные, кроссплатформенные или те, которые работают, например, только на Linux или мобильных устройствах. Есть те, что легко встраиваются в приложения, и другие - большие и с целым комплексом операций для установки.</p>
97
<p>Например, в приложение о питании нет смысла встраивать систему управления базами данных, предназначенную для обработки огромного количества информации. И наоборот - в корпоративной системе необходимо использовать большую транзакционную СУБД.</p>
97
<p>Например, в приложение о питании нет смысла встраивать систему управления базами данных, предназначенную для обработки огромного количества информации. И наоборот - в корпоративной системе необходимо использовать большую транзакционную СУБД.</p>
98
<h2>Легко ли изучить SQL</h2>
98
<h2>Легко ли изучить SQL</h2>
99
<p>На базовом уровне, который должен знать практически каждый разработчик, а также в идеале и продуктовые менеджеры, выучить SQL не особо сложно. Как минимум, научиться выполнять простые запросы по типу: создать таблицу, добавить в нее данные, изменить их или удалить. Но чтобы вы с гордостью могли сказать "я эксперт в базах данных", изучить нужно многое.</p>
99
<p>На базовом уровне, который должен знать практически каждый разработчик, а также в идеале и продуктовые менеджеры, выучить SQL не особо сложно. Как минимум, научиться выполнять простые запросы по типу: создать таблицу, добавить в нее данные, изменить их или удалить. Но чтобы вы с гордостью могли сказать "я эксперт в базах данных", изучить нужно многое.</p>
100
<blockquote><p>Если вы уже работали с одним из языков программирования, например, С или Java, то, скорее всего, вы привыкли писать алгоритмы, и декларативная модель с ее структурированным видом сначала может показаться непривычной. В SQL же нужно описывать результат, и это может быть необычно. В первую очередь нужно понять, что такое таблицы и какие между ними связи. Если это преодолеть, дальше будет легче.</p>
100
<blockquote><p>Если вы уже работали с одним из языков программирования, например, С или Java, то, скорее всего, вы привыкли писать алгоритмы, и декларативная модель с ее структурированным видом сначала может показаться непривычной. В SQL же нужно описывать результат, и это может быть необычно. В первую очередь нужно понять, что такое таблицы и какие между ними связи. Если это преодолеть, дальше будет легче.</p>
101
</blockquote><h2>С чего начать изучать SQL</h2>
101
</blockquote><h2>С чего начать изучать SQL</h2>
102
<p>Для старта стоит изучить основы проектирования баз данных. Возвращаясь к частям языка SQL, первое - создание и изменение таблиц. Это значит, что нам нужно разложить свою задачу на составляющие. На этом этапе мы разбираемся, как будем хранить информацию. Это и называется проектированием баз данных: какие таблицы нужны, из каких столбцов они будут состоять и как будут связаны друг с другом.</p>
102
<p>Для старта стоит изучить основы проектирования баз данных. Возвращаясь к частям языка SQL, первое - создание и изменение таблиц. Это значит, что нам нужно разложить свою задачу на составляющие. На этом этапе мы разбираемся, как будем хранить информацию. Это и называется проектированием баз данных: какие таблицы нужны, из каких столбцов они будут состоять и как будут связаны друг с другом.</p>
103
<p>Второй пункт - практическая работа с данными: запросы, которые выбирают определенные данные, удаляют их, изменяют и так далее. Как говорят из своего опыта специалисты, начавшие путь с самостоятельного изучения SQL, стартовать нужно сразу с практических задач онлайн - учиться правильно ставить команды. Можно попробовать с сайтов<a>sql-ex.ru</a>,<a>pgexercises.com</a>и<a>sql-tutorial.ru</a>.</p>
103
<p>Второй пункт - практическая работа с данными: запросы, которые выбирают определенные данные, удаляют их, изменяют и так далее. Как говорят из своего опыта специалисты, начавшие путь с самостоятельного изучения SQL, стартовать нужно сразу с практических задач онлайн - учиться правильно ставить команды. Можно попробовать с сайтов<a>sql-ex.ru</a>,<a>pgexercises.com</a>и<a>sql-tutorial.ru</a>.</p>
104
<p>Только после этого можно приступать к книгам. Например, "<a>Освой самостоятельно SQL за 10 минут</a>" Бена Форта, "<a>Введение в системы баз данных</a>" Криса Дейта или "<a>SQL. Полное руководство</a>" Джеймса Гроффа и Пола Вайнберга.</p>
104
<p>Только после этого можно приступать к книгам. Например, "<a>Освой самостоятельно SQL за 10 минут</a>" Бена Форта, "<a>Введение в системы баз данных</a>" Криса Дейта или "<a>SQL. Полное руководство</a>" Джеймса Гроффа и Пола Вайнберга.</p>
105
<p>Но главный минус книг - информация в них обновляется медленнее, чем развиваются технологии баз данных. Поэтому самый простой и эффективный способ разобраться и изучить SQL - пройти специализированный курс от проверенных специалистов. На нем можно не только познакомиться с базовыми операциями, но и изучить тонкости манипуляций.</p>
105
<p>Но главный минус книг - информация в них обновляется медленнее, чем развиваются технологии баз данных. Поэтому самый простой и эффективный способ разобраться и изучить SQL - пройти специализированный курс от проверенных специалистов. На нем можно не только познакомиться с базовыми операциями, но и изучить тонкости манипуляций.</p>