Как изучить SQL за 2 месяца с нуля. План обучения / Хабр
То, что данные называют нефтью 21 века известно уже давно: на них учатся нейросети, их мгновенная обработка и передача сильно упростили нашу жизнь, и одной из самых распространенных структур хранения данных является реляционная.
Основным инструментом для взаимодействия с реляционными БД является структурированный язык запросов или же SQL.
Вкратце, на мой взгляд, необходимо знать следующие разделы:
стандартные типы данных;
простые и вложенные запросы;
соединения и изменения данных в таблице;
проектирование схемы БД;
хранимые процедуры;
агрегатные и оконные функции;
древовидные структуры и рекурсивные запросы;
транзакции;
оптимизация запросов;
модули расширения.
Теперь перейдем непосредственно к плану обучения.
Основы
Предлагаю начать с замечательного курса на Stepik интерактивный тренажёр по SQL. В данном курсе очень плавно даётся вся необходимая база сразу же с практическими заданиями. Отсюда вы узнаете о выборке, группировке и корректировке данных, что такое вложенные запросы, какие существуют соединения таблиц и так далее.
Для закрепления пройденного материала желательно ещё пройти задания на PostgreSQL Exercises.
Продвинутые темы
Для выполнения простых задач хватит и предыдущего курса, однако, если вам придётся писать много сложных запросов или же ваша работа будет связана непосредственно с инженерией данных, то этого будет явно недостаточно.
Поэтому переходим к следующему курсу также на Stepik Свободное погружение в СУБД, где уже рассказывается о проектировании схем баз данных, оптимизации запросов, транзакциях, рекурсивных запросах и многом другом. В курсе также уделяется пару слов NoSQL.
После ещё можно пройти небольшой курс на Coursera Advanced Relational Database and SQL.
Литература
Также при прохождении курсов не будет лишним пользоваться литературой для углубления и структурирования информации. Мне понравилась книга «Основы технологий баз данных», Б.А. Новиков, Е.А. Горшкова, Н.Г. Графеева.
Плюс данной книги заключается в том, что она очень хорошо сочетается с вышеуказанными курсами.
Практика
Для практики можно использовать LeetCode и решать задачи по SQL уровня medium и выше, если получится. На данной платформе представлено множество задач с реальных собеседований в компании уровня FAANG и это её главное преимущество.
Если вам известны ещё хорошие ресурсы по SQL, которые не были представлены в статье, то обязательно делитесь ими в комментариях – соберем всю лучшую информацию в одном месте.
Всем успехов!
Дополнительные источники
Начальный уровень:
«SQL: быстрое погружение», Уолтер Шилдс;
«Изучаем SQL» (третье издание), Алан Болье;
«Practical SQL» (second edition), Anthony DeBarros;
«SQL in a Nutshell» (fourth edition), Kevin Kline, Regina O. Obe, Leo S. Hsu;
Основы SQL – курс Андрея Созыкина;
Знакомство с SQLite – небольшой вводный курс;
Intro to SQL– вводный курс на платформе kaggle;
SQL Tutorial – курс для начинающих от Amigoscode;
Базы данных и SQL – курс от МФТИ по SQL и NoSQL;
SQL Introduction – небольшой курс от Сергея Романенко;
Марафон данных: первое знакомство с SQL и Python – курс Dataskills;
SQL for Data Science – курс начального уровня от университета Калифорнии.
Продвинутый уровень:
«PostgreSQL 15 изнутри», Егор Рогов;
«SQL. Сборник рецептов» (второе издание), Энтони Молинаро, Роберт де Грааф;
«Effective SQL: 61 Specific Ways to Write Better SQL», John L. Viescas, Douglas J. Steele, Ben G. Clothier;
Базы данных – курс от СПбГУ;
Advanced SQL – ещё один курс на платформе kaggle;
Advanced Databases and SQL Querying – курс на платформе udemy;
Advanced SQL (summer 2020) – большой плейлист по продвинутым темам;
Intermediate PostgreSQL – курс среднего уровня от университета Мичигана;
From Data to Insights with Google Cloud – специализация от Google для разных уровней;
Введение в базы данных – совместный курс от НИУ ВШЭ, СПбПУ, Computer Science Center.
Ещё несколько полезных ссылок:
SQL-ex, Codewars, SQLZOO – сайты для практики;
Интерактивные учебники по SQL: один, два, три, четыре;
Полезные каналы: DataLearn, techTFQ, Seattle Data Guy, We Learn SQL;
Документация: PostgreSQL, MySQL, Oracle, Microsoft SQL server, SQLite.
18 лучших курсов по SQL с нуля 2023
ОТОБРАЖАЮТСЯ 1 — 10 ИЗ 18 РЕЗУЛЬТАТОВ
СОРТИРОВАТЬ ПО:
РелевантностьЗаголовокЦена ↑Цена ↓Рассрочка ↑Рассрочка ↓Начало ↑Начало ↓Длительность ↑Длительность ↓РелевантностьЗаголовокЦена ↑Цена ↓Рассрочка ↑Рассрочка ↓Начало ↑Начало ↓Длительность ↑Длительность ↓Совпадений не найдено
SQL для анализа данных
SQL и получение данных
4.2(84)Подробнее о курсеНачало: 23.06.2023
Длительность: 2 месяца
Занятия: 2-3 занятия в неделю
Формат: онлайн-лекции, домашние задания с фидбеком от преподавателей
Особенности: наполнение портфолио проектами, помощь в стажировке и трудоустройстве лучшим выпускникам
36 050 ₽ / курс
От 3 004 ₽/мес
SQL для анализа данных
Начало: 05.06.2023
Длительность: 2 месяца
Занятия: 3-5 часов в неделю
Формат: видеолекции + практика
Особенности: проверка практических заданий, бессрочный доступ к учебным материалам, помощь со стажировкой и трудоустройством
43 062 ₽ / курс
От 7 177 ₽/мес
Python-разработкаJavaScript-разработкаJava-разработкаВерстка на HTML/CSSРазработка на C++Аналитика на Power BISQL для анализа данныхАналитика на TableauРабота с GITLinuxПрограммирование с трудоустройствомDocker
Разработчик
3.9(88)Подробнее о курсеНачало: 03.06.2023
Длительность: 12 месяцев
Занятия: 2-3 занятия в неделю
Формат: онлайн-лекции, домашние задания с фидбеком от преподавателей
Особенности: постоянная практика, актуальная программа обучения, чат с одногруппниками. После обучение все студенты проходят стажировку
97 236 ₽ / курс
От 2 701 ₽/мес
SQL для анализа данных
Курс по SQL для анализа данных
4(63)Подробнее о курсеНачало: 14.06.2023
Длительность: 2 месяца
Занятия: около 8 часов в неделю
Формат: занятия с менторами в прямом эфире, домашние задания с обратной связью от преподавателей
Особенности: живые консультации с экспертами, поддержка ментора на протяжении всего обучения
19 800 ₽ / курс
От 1 650 ₽/мес
SQL для анализа данныхАналитика с нуля
Основы SQL для анализа данных
Начало: В любой момент
Длительность: 2 месяца
Занятия: 10 занятий и 1 курсовая работа
Формат: видеоуроки
Особенности: поддержка кураторов и координаторов учебного процесса
24 000 ₽ / курс
От 2 000 ₽/мес
SQL для анализа данных
hexlet.io/courses/rdb-basics»> Основы реляционных баз данных 4.3(31)Подробнее о курсеНачало: В любой момент
Длительность: 1 месяц
Занятия: в любое удобное время
Формат: видеоуроки, тесты, тренажеры
Особенности: теория в формате текста, тренажер с практикой, проверочные тесты, дополнительные материалы для обучения
3 900 ₽ / курс
Рассрочки нет.
SQL для анализа данных
Онлайн-курсы SQL для аналитиков
4.5(42)Подробнее о курсеНачало: В любой момент
Длительность: 1 месяц
Занятия: 2 занятия в неделю
Формат: онлайн занятия
Особенности: чат с преподавателем, живая трансляция, наставники курса – практикующие специалисты, которые будут помогать на каждом этапе от теории до практических заданий и проконсультируют при подготовке к созданию личного проекта, сертификат о прохождении курса
15 800 ₽ / курс
От 2 700 ₽/мес
SQL для анализа данныхBackend-разработка
io/course-postgresql»> PostgreSQL: replication, backup and observability 4.4(34)Подробнее о курсеНачало: В любой момент
Длительность: 2 месяца
Занятия: в любое удобное время
Формат: видеокурс
Особенности: доступ навсегда
50 000 ₽ / курс
От 12 500 ₽/мес
SQL для анализа данных
SQL с 0 для анализа данных
3.9(51)Подробнее о курсеНачало: В любой момент
Длительность: 2 месяца
Занятия: 2 лекции в неделю + практика
Формат: видеоуроки, практические занятия в формате домашних заданий, обратная связь от наставников
Особенности: бессрочный доступ к курсу, чат учеников для обмена опытом, поддержка менторов в live-режиме.
39 900 ₽ / курс
От 1 663 ₽/мес
SQL для анализа данныхАлгоритмы и структуры данных
ru/course/sql-developer»> SQL-разработчик 4(108) Подробнее о курсеНачало: 05.06.2023
Длительность: 2 месяца
Занятия: 3-5 часов в неделю
Формат: видеолекции + практика
Особенности: проверка практических заданий, бессрочный доступ к учебным материалам, помощь со стажировкой и трудоустройством
60 120 ₽ / курс
От 5 010 ₽/мес
SQL для анализа данных
Базы данных: SQL (DDL/DML)
4.3(31)Подробнее о курсеНачало: В любой момент
Длительность: 1 месяц
Занятия: в любое удобное время
Формат: видеоуроки, тесты, тренажеры
Особенности: теория в формате текста, тренажер с практикой, проверочные тесты, дополнительные материалы для обучения
3 900 ₽ / курс
Рассрочки нет.
SQL для анализа данных
ОПТИМИЗАЦИЯ ЗАПРОСОВ SQL
4.Начало: В любой момент
Длительность: До 1 месяца
Занятия: 4 занятия по 2,5 часа в вечернее время
Формат: онлайн
Особенности: записи вебинаров, много практики
22 000 ₽ / курс
От 5 500 ₽/мес
Аналитика на Power BIАналитика на PythonSQL для анализа данных
Профессия «Аналитик данных»
5(16)Подробнее о курсеНачало: 16.06.2023
Длительность: 4 месяца
Занятия: в любое удобное время
Формат: онлайн
Особенности: удостоверение гособразца, неограниченный доступ к материалам, сообщество, обучение 24/7
62 300 ₽ / курс
От 5 192 ₽/мес
SQL для анализа данных
Базы данных: SQL (DQL)
4.3(31)Подробнее о курсеНачало: В любой момент
Длительность: 1 месяц
Занятия: в любое удобное время
Формат: видеоуроки, тесты, тренажеры
Особенности: теория в формате текста, тренажер с практикой, проверочные тесты, дополнительные материалы для обучения
3 900 ₽ / курс
Рассрочки нет.
SQL для анализа данных
SQL с нуля для анализа данных
4.4(42)Подробнее о курсеНачало: 02.06.2023
Длительность: 1 месяц
Занятия: в любое удобное время
Формат: видеоуроки
Особенности: много практики, личный куратор, вечный доступ к курсу и обновлениям, диплом
23 364 ₽ / курс
От 1 947 ₽/мес
SQL для анализа данных
Курс «SQL для работы с данными и аналитики»
3.9(73)Подробнее о курсеНачало: 05.06.2023
Длительность: 2 месяца
Занятия: в любой момент
Формат: вебинары, теория, тренажеры
Особенности: основная часть: теория и SQL-тренажёр, курсовые проекты, дополнительная практика поможет узнать больше полезного и набить руку, наставники и кураторы, поддержка 24/7, удостоверение о повышении квалификации
41 000 ₽ / курс
От 2 109 ₽/мес
SQL для анализа данных
ru/lessons/ms-sql-server-razrabotchik/»> MS SQL Server Developer 3.9(62)Подробнее о курсеНачало: 28.07.2023
Длительность: 5 месяцев
Занятия: 4 академических часа в неделю
Формат: много практики и кейсов из реальных проектов
Особенности: выпускной проект, обратная связь от преподавателя
80 000 ₽ / курс
Рассрочки нет.
SQL для анализа данных
Обработка и анализ данных в SQL
4.3(23)Подробнее о курсеНачало: В любой момент
Длительность: 1 месяц
Занятия: 10 часов в неделю
Формат: онлайн
Особенности: онлайн-лекции с практикой в симуляторе, кураторы с реальным опытом 9+лет в аналитике и IT, диплом, чат курса, доступ навсегда
6 600 ₽ / курс
От 275 ₽/мес
Лучший способ выучить SQL для науки о данных
Категории
SQLGuidesCareer
Вы не знаете, как выучить SQL? Больше никаких оправданий! Это подробное руководство по лучшим способам изучения SQL.
Мы предполагаем, что вы слышали о SQL. По крайней мере, от людей, рассказывающих вам, как это здорово и как вам следует этому научиться. Это очень верно; SQL действительно великолепен. Чего обычно не хватает, так это ответа на вопрос, зачем и, самое главное, как изучать SQL. Это то, что мы ответим в этом руководстве.
Но сначала что.
Что такое SQL?
SQL — это сокращение от Structured Query Language, языка программирования, созданного для работы с реляционными базами данных. Другими словами, хранение, изменение и извлечение данных.
Он был разработан Рэймондом Бойсом и Дональдом Чемберленом из IBM в 1970-х годах. Это стандартизированный язык программирования с 1986 года, когда ANSI и ISO приняли стандартное определение языка.
Несмотря на то, что существует стандартный SQL, практически каждая система управления реляционными базами данных (RDBMS) имеет свою собственную версию (или диалект) SQL. Это означает, что большинство стандартных опций SQL обычно присутствуют в каждой СУБД. Однако иногда диалекты не поддерживают все стандартные функции SQL; они предлагают варианты или даже дают возможности, которых нет в стандартном SQL.
По состоянию на май 2022 года четыре самых популярных ядра баз данных и диалекты SQL:
- Oracle
- MySQL
- Microsoft SQL Server
- PostgreSQL
Для чего используется SQL?
Как язык, специально созданный для общения с базами данных, именно для этого он используется в науке о данных. Но что это означает на практике? Это означает, что вы можете использовать его для создания и изменения объектов базы данных. С помощью SQL вы можете создавать базы данных и таблицы, определять их столбцы и типы данных и заполнять их данными. SQL также позволяет изменять и удалять таблицы и данные внутри.
В SQL есть команды для управления доступом к базам данных и хранящимся в них данным.
Но наиболее важными функциями SQL являются выборка данных из баз данных, манипулирование ими, выполнение вычислений и подготовка отчетов. Данные — это то, вокруг чего вращается наука о данных. И данные по-прежнему большую часть времени хранятся в реляционных базах данных. Даже если вы делаете все остальное на других языках программирования, SQL — лучший инструмент для извлечения данных и манипулирования ими. И поэтому знание SQL является обязательным условием для любого специалиста по данным.
Как выучить SQL
Лучший способ выучить SQL зависит от ваших предпочтений в обучении, количества свободного времени, вашего знакомства с SQL и множества других факторов. Мы не можем найти лучший способ для каждого человека; это зависит от вас!
Но мы поможем вам определиться. Главный вопрос, на который вы должны ответить: вы уже работаете с SQL (хотя бы в некоторой степени) или хотите работать на своей текущей работе? Или вы хотите выучить SQL, чтобы получить работу, требующую навыков работы с SQL?
Почему важны ответы на эти вопросы? Если вы хотите изучить SQL, чтобы облегчить себе работу (подсказка: перестаньте делать все в Excel) или просто чувствуете, что вам нужно улучшить свои существующие навыки работы с SQL, чтобы лучше выполнять свою работу, это означает, что вы уже работаете с реальными данными. Другими словами, у вас есть данные для практики.
Если вы хотите выучить SQL, чтобы найти лучшую работу, у вас, скорее всего, нет доступа к актуальным данным и базам данных, так что вам придется это как-то компенсировать. Вам понадобятся учебные ресурсы, посвященные написанию кода.
Исходя из этого, выбор лучших способов изучения SQL зависит от количества практики, которую они предлагают.
Для тех, кто уже работает с реальными данными
Видеокурсы
Видеокурсы максимально приближены к настоящей лекции. Каждый респектабельный видеокурс создан экспертами по SQL, в которых они объясняют теоретические основы технических концепций и показывают, как перевести их в код SQL. Обычно вам придется следовать за лектором и писать код так же, как он. Очень часто видеокурсы дают вам упражнения после каждого урока, но эти курсы больше ориентированы на объяснение, а не на практику.
Мы дадим вам краткое описание трех ресурсов для видеокурсов SQL и ссылки на некоторые курсы, которые они предлагают. Это только отправная точка. Не стесняйтесь просматривать эти сайты и найти курс, который подойдет вам лучше всего.
Udemy
Одной из самых популярных платформ, предлагающих видеокурсы, является Udemy. Они также являются богатым источником курсов SQL, начиная от учебных курсов и отдельных курсов разного уровня сложности и заканчивая конкретными темами, использованием и диалектами SQL. В настоящее время существует 8 426 курсов по SQL, из них 537 бесплатных.
Три самых популярных курса для начинающих:
1. Полный учебный курс SQL 2022: переход от нуля к герою
2. Окончательный учебный курс MySQL: переход от SQL для начинающих к эксперту
3. SQL — MySQL для аналитики данных и Business Intelligence
Coursera
Coursera — один из лучших ресурсов для видеокурсов по SQL. Их курсы чаще всего предоставляют университеты США или крупные ИТ-компании. 1450 курсов, проектов, специализаций, даже профессиональных сертификатов, степеней и университетских сертификатов; это все есть.
Наиболее популярные курсы по SQL:
1. Изучение основ SQL для науки о данных, специализация Калифорнийского университета в Дэвисе
2. Сертификат Google Data Analytics Professional от Google
3. SQL для науки о данных, Калифорнийский университет в Дэвисе
edX
Хотя на edX не так много курсов, как на Udemy или Coursera, у edX есть очень подробные и качественные курсы, предоставляемые различными университетами и ИТ-компаниями США. Помимо курсов, они также предлагают программы, которые принесут вам профессиональный сертификат или степень.
Они более сосредоточены на некоторых конкретных темах, часто на продвинутом уровне. Некоторые из отдельных курсов, которые могут помочь вам начать работу:
1. Введение в SQL от Davidson College
Каналы Youtube
Одним из преимуществ видео на Youtube является то, что они бесплатны. Если что-то бесплатно, это не значит, что оно некачественное. Наоборот, есть несколько отличных и мастерски сделанных туториалов или целых каналов, посвященных SQL, базам данных и другим смежным темам. Видеоролики могут варьироваться от нескольких часов обучающих видеороликов до видеороликов, объясняющих конкретную техническую тему или проблему и способы ее решения. Эти короткие видеоролики, посвященные одной концепции, могут быть полезны всем, кто застрял и хочет быстро освежить свою память по определенной теме. Вы можете смотреть видео на Youtube почти как видео-шпаргалки.
freeCodeCamp.org
freeCodeCamp.org — некоммерческая организация, помогающая людям научиться программировать бесплатно. Их канал на Youtube — богатый ресурс для всех, кто хочет научиться программировать. Вы можете просмотреть несколько их видеороликов по SQL. Некоторые из них могут быть вам интересны.
1. Учебное пособие по SQL — полный курс по базам данных для начинающих
2. База данных MySQL — полный курс
3. Учебное пособие по PostgreSQL — полный курс для начинающих
StrataScratch
Собственный канал StrataScratch на Youtube ориентирован на предоставление вам более широких знаний о науке о данных и месте SQL в ней. Подход отличается тем, что видеоролики обычно посвящены конкретной технической теме и объясняют ее, написав решение вопроса на собеседовании по SQL. Есть также видеоролики с более общими советами, например, по структурированию кода SQL или тому, как избежать типичных ошибок кодирования. Вот несколько видеороликов, с которых вы можете начать:
1. Решение вопроса интервью Airbnb Data Science Coding | SQL-интервью [любимая национальность хоста]
2. Кейсы SQL для интервью по науке о данных в 2021 году
3. Наиболее распространенные ошибки кодирования на собеседованиях по науке о данных
Аналитик Алекс
Канал Алекса Фреберга также полон полезных видео. Он охватывает как технические, так и нетехнические темы, представляющие интерес для аналитиков данных. Видео аккуратно отсортированы по темам. Вы можете послушать Алекса, рассказывающего о портфолио проектах, вопросах для интервью и различных советах по карьере. Или вы можете пойти более технически и посмотреть его учебник по SQL, созданный для разных уровней знаний. Видео обычно не превышают 10 минут, поэтому легче учиться небольшими шагами.
1. Основы SQL для аналитиков данных. Он преподает SQL на платформе PostgreSQL. Есть учебник для начинающих и более короткие видеоролики PostgreSQL, объединенные в полный плейлист курса.
1. Учебник по SQL для начинающих | Изучите SQL за 4,2 часа | 2021
2. Курс PostgreSQL
Блоги
Некоторые люди предпочитают читать о том, как что-то сделать, а затем делать это самостоятельно, а не смотреть видео, где кто-то им это показывает. При чтении блогов также легко пролистывать текст и сразу переходить к интересующей вас теме. Тем не менее, хорошие статьи обычно дают вам более широкую перспективу и объясняют то, что вы даже не подозревали, что должны были объяснить. По этой причине рекомендуется читать статьи полностью.
StrataScratch
В нашем блоге мы стремимся охватить все темы, важные для специалистов по данным, и их легко просматривать. В разделах SQL вы можете найти руководства по концепциям SQL и статьи, показывающие шаги ответа на конкретный вопрос собеседования по программированию, что является отличным способом усвоения новой информации.
Вот несколько советов, чтобы вы поняли, о чем этот блог.
1. Памятка по SQL — технические понятия для собеседования
2. Полное руководство по агрегатным функциям SQL
3. Вопросы для интервью по Uber SQL
LearnSQL.com
Их блог изобилует статьями, объясняющими все основные концепции и приемы SQL в более коротких и более длинных версиях, начиная от базовых к передовым знаниям. У них также есть поваренная книга SQL с краткими практическими рекомендациями для всех самых популярных диалектов SQL.
Чтобы дать вам представление об их подходе, вот несколько образцов статей:
1. Как избавиться от дубликатов в SQL JOIN?
2. Что такое общее табличное выражение (CTE) в SQL?
3. Как сделать запрос к дереву «родитель-потомок» в SQL
GeeksforGeeks
Если вы когда-нибудь гуглили что-то, связанное с SQL, то, скорее всего, одним из первых результатов был GeeksforGeeks. Их учебные пособия являются отличным ориентиром, если вы хотите узнать, как работает определенная команда SQL. Объяснения всегда лаконичны, поддерживаются синтаксисом SQL и описанием того, как это работает на примере. Нет смысла связывать несколько статей, поэтому мы можем только посоветовать вам ознакомиться со всеми затронутыми в них темами SQL.
W3Schools
Концепция похожа на GeeksforGeeks. Основное отличие состоит в том, что W3Schools также позволяет запускать код самостоятельно и просматривать результаты. Опять же, мы просто оставим вам ссылку, по которой вы сможете легко найти интересующую вас тему SQL.
Официальная документация по базе данных
Важным источником знаний по SQL является официальная документация базы данных (или диалекта SQL), с которой вы работаете. Объяснения иногда могут быть сухими, поэтому, возможно, они лучше подходят для пользователей, уже знакомых с синтаксисом SQL и выше базового уровня SQL. Вам следует особенно обращаться к этой документации, если вас интересуют не общие концепции SQL, а то, как конкретная операция может быть написана на этом особом диалекте SQL. Помните, что мы сказали: хотя между диалектами есть сходство, не все функции доступны во всех из них, и если они есть, для достижения того же результата необходимо использовать другое ключевое слово или другие предположения.
Можно было бы ожидать, что люди, создавшие базу данных, лучше всех знают, на что она способна. Особенно, когда есть какие-то обновления, официальная документация должна быть основным источником.
Документация для всех последних версий:
1. Справочник по Oracle Database SQL
2. Справочное руководство по MySQL 8.0
3. Техническая документация по SQL Server
4. Документация по PostgreSQL 14.3
Задать вопрос
Если нет курсов, видео, или статьи объясняют именно то, что вы хотите знать, если вы застряли, единственное решение — спросить кого-нибудь. Не то чтобы вопросы всегда должны быть последними; иногда даже лучше не терять времени, а обратиться со своей проблемой напрямую к тому, кто сможет вам помочь.
К счастью, существует большое онлайн-сообщество пользователей SQL с разным уровнем знаний, которые часто очень хотят и могут помочь. Если они еще не помогли кому-то с той же проблемой, что и вы, вы всегда можете опубликовать вопрос. Кроме того, некоторые веб-сайты позволяют вам получить сеанс один на один с экспертом по SQL за определенную плату, чтобы помочь вам решить конкретную проблему SQL.
1. Stack Overflow
2. Reddit
3. GitHub
4. Codementor
Для тех, кто не работает с реальными данными (пока)
Если вы не работаете с данными, это не означает, что упомянутые ранее ресурсы вам бесполезны. Нет, дело в том, что они обычно не дают возможности попрактиковаться в том, чему вы научились. Поскольку вы не работаете с данными, у вас нет возможности применить на практике то, что вы узнали, на реальных данных.
Вы всегда можете создавать свои собственные данные или использовать платформы, которые одновременно объясняют SQL и являются интерактивными, чтобы вы могли практиковаться в написании кода.
Создайте свои собственные данные
Некоторые из возможностей заключаются в том, что вы создаете таблицы и вводите данные вручную в SQL, используя оператор CREATE TABLE и INSERT INTO
Более быстрый способ сделать это — использовать Excel или Google Таблицы. Вы записываете нужные значения, а числовые значения можно сгенерировать с помощью функции СЛУЧМЕЖДУ(). Затем вы можете загрузить его в базу данных и попрактиковаться в написании кода.
Самый простой способ — использовать веб-сайты для создания фиктивных данных, такие как Mockaroo или Generate Data.
Дело в том, что при создании собственных данных обычно требуется некоторый опыт, чтобы знать, какие данные лучше всего продемонстрируют концепцию, которую вы хотите изучить и применить на практике.
Обычно лучше искать интерактивные курсы и обучающие сайты.
Интерактивные курсы
Интерактивное обучение сочетает в себе лучшее из теоретического и практического мира. Теория есть, но не в удушающих количествах. Подробные объяснения выполняются с помощью кодов, которые вы можете запустить и посмотреть, как это работает. Самое главное, вам нужно написать свой собственный код и показать, что вы чему-то научились. После каждого урока есть ряд упражнений, которые вам нужно решить, написав правильный код, прежде чем переходить к следующему разделу.
LearnSQL.com
Мы уже упоминали их блог, но основным направлением деятельности LearnSQL.com является обучение SQL с помощью интерактивных курсов. Существуют отдельные курсы и целые треки, которые дают вам комплексный и структурированный путь к обучению. У них также есть треки и курсы, созданные только для практики SQL. В настоящее время существует 80 треков и курсов для обучения и практики, из которых наиболее популярны следующие три:
1. SQL от А до Я
2. Практика SQL
3. Основы SQL
DataCamp
DataCamp также предлагает интерактивные курсы SQL и некоторые другие курсы по науке о данных, которые могут вас заинтересовать. Есть 27 курсов SQL и семь управляемых проектов, где вы можете практиковать то, что вы узнали.
Три самых популярных курса здесь:
1. Введение в SQL
2. Объединение данных в SQL
3. Средний уровень SQL
Codecademy
В Codecademy вы также можете изучать гораздо больше, чем просто SQL. По сути, каждый язык программирования и любой другой навык, используемый в науке о данных. Но давайте придерживаться SQL. С 15 курсами и карьерными путями это также ценный источник для изучения и практики SQL.
Некоторые предложения, которые, вероятно, будут вам интересны:
1. Специалист по данным: специалист по аналитике
2. Изучение SQL
3. Анализ данных с помощью SQL
Ответы на вопросы интервью
Один из лучших способов изучения SQL решить как можно больше вопросов интервью от реальных компаний. Не то чтобы вы осваивали только концепции SQL, не беспокоясь о создании данных для практики. Вы также будете решать настоящие вопросы для собеседования, поэтому, когда у вас появится возможность пройти собеседование по работе с данными, есть вероятность, что вы получите те же или очень похожие вопросы для собеседования, что и те, которые вы уже практиковали.
StrataScratch
StrataScratch может похвастаться более чем 1000 реальных вопросов для интервью от крупнейших технологических компаний, таких как Facebook/Meta, Amazon, Apple, Google, Netflix, Airbnb, LinkedIn, Uber, Amazon; вы называете это. Вопросы по кодированию можно фильтровать по нескольким категориям, а также есть тематические темы SQL и семейства тем.
Все вопросы интервью могут быть решены в PostgreSQL или MySQL, что упрощает выполнение ваших задач.
Каждый вопрос позволяет вам просматривать набор данных, писать собственный код, проверять его, сравнивать с другими пользователями и обсуждать в треде. Растущее количество вопросов также имеет видео решение.
LeetCode
LeetCode — одна из самых популярных платформ для разработки программного обеспечения, где вы можете учиться и проверять свои знания. У них также есть раздел для изучения SQL и ответов на актуальные вопросы интервью путем написания кода SQL. Они поддерживают базы данных MySQL, MS SQL Server и Oracle. Как и в случае со StrataScratch, вы можете написать код и обсудить его с другими пользователями. Официальное решение всегда есть и объяснено.
Единственным недостатком является то, что их вопросы по SQL не так сильно ориентированы на анализ данных. Но если вы хотите изучить и попрактиковаться в синтаксисе SQL, это очень полезный ресурс.
SQLPad
SQLPad также дает вам настоящие вопросы для интервью, хотя и в гораздо меньшем количестве: 207. Каждый вопрос по кодированию сопровождается видео-лекцией, описывающей концепцию(и), заданную в конкретном вопросе. Здесь вы также можете проверять наборы данных и писать код в PostgreSQL и MySQL.
HackerRank
Еще один популярный ресурс для практики SQL и решения вопросов для интервью — HackerRank. Они не предлагают настоящих вопросов для интервью, но есть множество задач, которые имитируют эти вопросы и помогают вам быстрее писать код.
Сколько времени нужно, чтобы выучить SQL?
Коротко:
От нескольких часов до вечности.
Longly:
Взяв за основу длину видео и интерактивных курсов, изучение основ SQL займет у вас от пары дней до пяти недель. Это, конечно, зависит от того, сколько часов ежедневно или еженедельно вы посвящаете изучению SQL. Скорость обучения также зависит от того, есть ли у вас уже опыт работы с базами данных и программированием.
В общем, можно с уверенностью сказать, что вы сможете писать базовые SQL-запросы через несколько недель. Учиться чему-то — это одно, а закреплять свои знания — совсем другое. Вот почему опыт имеет решающее значение. Все учебные пособия, видео и статьи предназначены только для того, чтобы дать вам основу. Настоящее обучение начинается, когда вы начинаете применять полученные знания в реальных бизнес-ситуациях, когда вы сталкиваетесь с несовершенством данных и баз данных и когда вы сталкиваетесь с проблемой, которую необходимо решить.
Самое замечательное в этом то, что эта среда реального времени позволяет вам облажаться! Учиться на чужих ошибках — это здорово, но учиться на собственных ошибках еще эффективнее. Мы тут даже не шутим! Вы наверняка будете делать ошибки, и, учитывая, что они не фатальные, это самая невероятная возможность учиться. Это запоминающийся урок: он напоминает вам, чего не следует делать снова и как избежать ошибки в следующий раз. Это и есть опыт: имя, которое мы даем своим ошибкам, как сказал бы Оскар Уайльд.
Для большинства людей будет достаточно нескольких недель базового изучения SQL и месяца или двух практики. После этого они наверняка смогут выбирать некоторые столбцы из базы данных, удобно фильтровать данные и, возможно, даже выполнять некоторые простые вычисления.
А что потом? Хорошо, что знание базового SQL открывает доступ к более сложным темам, и благодаря вашему опыту их становится легче изучать самостоятельно. Однако вам никогда не придется использовать все, что делает SQL, поэтому всегда будет что-то, чего вы не знаете, и обучение никогда не прекращается.
Изучение SQL — это непрерывная деятельность, в которой вы никогда не будете «там». Люди используют SQL годами и десятилетиями. Даже им приходится признать, что они не все знают. Не беспокойтесь, если всего через несколько секунд или минут вы сможете почувствовать себя полным провалом SQL, а затем мастером вселенной SQL. Это нормально.
MySQL и PostgreSQL: что лучше изучить?
Если бы вы были внимательны, то могли бы заметить, что все ресурсы, которые мы здесь перечислили, чаще всего концентрируются на обучении PostgreSQL или MySQL, иногда даже на обоих.
Причина в том, что эти две базы данных входят в четверку самых популярных баз данных. Но MS SQL Server и Oracle тоже. Почему бы не научить их? Причина в том, что и PostgreSQL, и MySQL являются базами данных с открытым исходным кодом, а две другие — нет.
Это облегчает пользователям переход от обучения к использованию SQL на практике. Нет необходимости платить за базу данных, чтобы иметь возможность использовать ее и ее диалект SQL.
Бесплатность — не единственное достоинство PostgreSQL и MySQL. Обе они являются первоклассными базами данных, которые используются крупными компаниями, такими как Apple, Skype, Uber, Netflix, Instagram, Airbnb и NASA.
Какой выбрать из двух популярных бесплатных диалектов SQL: PostgreSQL или MySQL?
Как правило, MySQL лучше подходит для начинающих, которые хотят быстро учиться и в основном будут работать с запросами только для чтения.
Для более ресурсоемких запросов на чтение и запись лучше подходит PostgreSQL. Однако у PostgreSQL более крутая кривая обучения.
Обычно мы рекомендуем изучать PostgreSQL для работы с данными. Для этого есть причины, которые вы можете найти в нашем сравнении между PostgreSQL и MySQL по нескольким темам, важным для специалистов по данным.
Заключение
Сеть — великолепный инструмент, который мы слишком редко используем в полной мере. Нет ничего плохого в том, чтобы смотреть видео о милых кошках или глупых людях. Но иногда полезно использовать время и возможности, которые у нас есть, для изучения новых навыков или улучшения существующих.
Изучение SQL — одно из решений, которое может оказать долгосрочное благотворное влияние на вашу карьеру и все, что с ней связано. Может пройти несколько часов или недель, прежде чем вы начнете самостоятельно писать функциональный код SQL.
Различные ресурсы, такие как видео и интерактивные курсы, учебные пособия на Youtube, блоги и поддержка сообщества; все можно найти в инете. И многие из этих ресурсов доступны бесплатно.
То же самое верно для PostgreSQL и MySQL, двух самых популярных баз данных SQL.
Мы сделали все возможное, чтобы предоставить вам хорошие ресурсы для изучения SQL. Теперь дело за вами! Нельзя сказать, что вы не знали, с чего начать.
Блокнот SQL| Руководство пользователя Enterprise Architect
Предыдущий | Следующий |
Блокнот SQL предоставляет механизм для разработки и выполнения специальных запросов SQL к действующей базе данных. Пока вы разрабатываете свою модель данных, вы можете выполнять и тестировать специальные SQL-запросы для сценария DDL или запускать запросы в действующей базе данных; все это возможно в интерфейсе Enterprise Architect Database Builder.
Блокнот SQL требует, чтобы построитель базы данных имел действительное соединение ODBC с действующей базой данных. Это соединение с базой данных является общим для вкладок SQL Scratch Pad, Database Compare и Execute DDL в Database Builder.
Блокнот состоит из:
- Панели инструментов, предоставляющей средства для импорта, сохранения, выполнения и очистки SQL-запросов
- Панель редактора, в которой вы создаете или импортируете SQL-запросы — эта панель обеспечивает подсветку синтаксиса на основе SQL для текущей модели данных
- Панель с вкладками, состоящая из двух страниц, одна для отображения результатов выполнения запроса, а другая для отображения любых сообщений, сгенерированных во время выполнения
Access
Откройте окно Database Builder, затем отобразите вкладку «Блокнот SQL».
Специализация > Инструменты > Построитель баз данных > Блокнот SQL |
Панель инструментов Блокнот
Функции каждой кнопки на Панели инструментов Блокнот описаны в этой таблице, работая слева направо.
Выполняет SQL-запрос, отображаемый в данный момент в Блокноте. Проверьте вкладки «Результаты» и «Сообщения» на наличие результатов выполнения запроса. | |
Очищает поля редактора запросов SQL, чтобы можно было ввести новый запрос. | |
Загружает запрос SQL из файла. Отображается браузер исходных файлов, по умолчанию отображающий файлы SQL. Щелкните имя файла и кнопку «Открыть», чтобы отобразить содержимое файла в блокноте. | |
Сохраняет этот оператор SQL в объект SQL Query, из которого он был получен. | |
Создает новый объект SQL Query и сохраняет этот оператор в этом объекте. | |
Сохраняет текущий отображаемый запрос в файл, из которого он был получен. Если вы создали запрос с нуля, отобразится браузер исходных файлов, в котором вы вводите новое имя файла и нажимаете кнопку «Сохранить», чтобы сохранить запрос. | |
Сохраняет текущий отображаемый запрос в новый файл . sql. Отображается браузер исходных файлов, в котором вы вводите новое имя файла и нажимаете кнопку «Сохранить», чтобы сохранить запрос. | |
Очищает содержимое блокнота. Любой запрос, отображаемый в блокноте, остается там до тех пор, пока вы не замените его другим запросом из файла или не закроете модель. | |
Применяет символы комментария SQL ‘—‘ к началу каждой выбранной строки или, если выбранные строки уже прокомментированы, удаляет символы комментария. Либо нажмите Ctrl+Shift+C. | |
Введите символы, которые будут обозначать конец каждого оператора. | |
Отображает справку в блокноте запросов SQL. | |
Отображает метку, содержащую описание текущего SQL, наличие ожидающих изменений (обозначенных звездочкой *), а также имя загруженного объекта SQL Query или имя файла. Оставить комментарий
|