Как изучить язык баз данных SQL? — Хабр Q&A
К сожалению, чтобы Вам что-то посоветовать — необходимо узнать Ваш личный «фундамент». Хоть указанная Вами книга и будет полезной (даже с учетом того, что она писалась для MySQL версии 4.х, фундаментально как в СУБД, так и в SQL и в конкретном синтаксисе MySQL последнее, наверно, десятилетие, ничего не менялось), я бы посоветовал следующий алгоритм обучения:
1) Знакомство с основами реляционной алгебры, нормальными формами и реляционной моделью. Без фанатизма, прочтение и осознание статей даже на Википедии хватит за глаза.
2) Знакомство с спецификацией SQL2008. Опять же, без фанатизма. В любом случае, работать Вы будете впоследствии с определенным диалектом языка.
3) Выбор диалекта языка. Подбор литературы (практически любой, за исключением книг из серии «{0} для чайников» и «100 и одно решение для {0}»). На этом этапе важно определиться также с инструментарием, который Вы будете использовать в дальнейшем.
4) Знакомство с UML. Точнее, если по минимуму, с той частью, которая затрагивает прототипирование БД. SQL и СУБД — это инструменты, которые позволяют автоматизировать процессы бизнес логики. UML позволяет эти процессы описать и на основе этих процессов создать прототип схемы БД, от которого уже можно идти к конкретной реализации.
Итак. Четыре базовых шага выполнены. Дальше все просто, перевариваете информацию и занимаетесь практикой от простого к сложному (в комментариях уже указывали вполне годные наборы задачек). Попутно узнаете особенности программной реализации выбранной Вами СУБД. И внимательно читаете документацию от разработчика. На примере SQLite, у них подробно разобрана семантика запросов: SQLite CREATE. Под MySQL найдете сами.
Теперь поясню, почему все четыре шага важны.
1) Без базовых фундаментальных знаний вы просто не поймете, почему, к примеру, в ячейке столбца номера нельзя указывать два номера телефона, или как работают ограничения на целостность данных.
2) Хоть диалекты SQL и отличаются от стандарта SQL:2008, следует понимать, что знание стандарта позволит Вам в случае необходимости переключиться с одной СУБД на другую. Также, хорошая реляционная SQL СУБД должна быть совместима с этим стандартом априори.
3) Тут на Ваш вкус. Посмотрите изложение автора перед покупкой, посмотрите списки того или иного программного обеспечения. Но факт остается фактом, что прочтение только стандартов, мануалов и официальной документации — путь явно не для всех. Кому-то просто необходимо «художественное» изложение, да и просто из книг можно почерпнуть реальные примеры из опыта автора.
4) Надо понимать, что реляционные СУБД всего лишь инструмент для хранения и обработки данных, обеспечивающий определенные бизнес-процессы определенной предметной области. И под бизнес-процессами следует понимать не как какую-то эфемерную для простого человека вещь, а то, что закладывается под этим словом в оригинальном языке, т.е. совокупность процессов\действий, направленных на создание продукта\предоставление услуги.
Я, как и многие, начинал с какого-то полу прочитанного учебника и примеров из сети. Сейчас я понимаю, что просто потратил время практически впустую. Как ни странно, хоть и принято ругать наше образование, но список курсов для специальностей «ПИ» подобран не просто так. Помимо самого языка следует знать математический «бэкенд» и как его использовать для реализации задач предметной области. Я отношусь к SQL потребительски, это не мой основной язык, но сейчас я понимаю, что если бы уделил ему больше внимания не как языку, а, в первую очередь, как к одному из инструментов СУБД, работающих на основе реляционной алгебры для обеспечения бизнес-процессов, я бы избежал кучу потерянного времени, костылей и ошибок.
Надеюсь, мой ответ будет Вам полезен.Обучающие ресурсы по SQL — SQL Server
Изменить
Twitter LinkedIn Facebook Адрес электронной почты
Изучение sql
Обучение
- SQL Azure для начинающих
- Основы SQL Azure
- Практикум по SQL Azure
- Вводный тренинг по SQL Azure
- LinkedIn Learning
- Pluralsight
SQL Server
Обучение
- Обновление SQL Server
- Использование помощника по настройке запросов
- Семинары по SQL Server
Краткое руководство
- Подключение и отправка запроса с помощью Azure Data Studio
- Подключение и создание запросов с помощью SSMS
- Создание инструкций на языке Transact-SQL (T-SQL)
- Расширенные события
- Резервное копирование и восстановление в локальной среде
- Восстановление & резервной копии в Хранилище BLOB-объектов Azure
Учебник
- группа доступности
- Репликация транзакций
- Репликация слиянием
- Создание таблицы, размещенной в памяти
- Подписывание хранимой процедуры с помощью сертификата
- хранилище BLOB-объектов Azure
- Помощник по настройке базы данных
Архитектура
- Архитектура и проектирование индексов
- Архитектура страниц и экстентов
- Оптимизация и проверка после миграции
- Архитектура обработчика запросов
- Архитектура задач и потоков
- Структура журнала транзакций
- Блокировка и управление версиями строк транзакций
- Архитектура управления памятью
SQL Server на виртуальной машине Azure (IaaS)
Краткое руководство
- Создание виртуальной машины с помощью портала
- Создание виртуальной машины с помощью PowerShell
Практическое руководство
- Регистрация с помощью поставщика ресурсов
- Настройка группы доступности с помощью Az CLI
- Создание FCI с помощью общей папки категории «Премиум»
- Использование службы хранилища Azure для резервного копирования и восстановления
База данных SQL Azure (PaaS)
Обучение
- Выбор подхода к хранению данных
- Защита Базы данных SQL
- Географически распределенное приложение
- Использование приложения ASP. NET для выполнения запросов к Базе данных SQL
Краткое руководство
- Создание базы данных с помощью портала или кода
- Создание баз данных с помощью шаблона
- Настройка правил брандмауэра для IP-адресов на уровне сервера
Учебник
- Миграция с помощью службы Azure Database Migration Service
- Добавление одной базы данных в группу отработки отказа
- Добавление эластичного пула в группу отработки отказа
- Настройка активной георепликации
- Настройка безопасности
SQL Server в Linux
Обучение
- Введение
- Развертывание
- Автоматическая настройка
- Контейнеры
Краткое руководство
- Red Hat
- SUSE
- Ubuntu
- Docker
- В Azure
Учебник
- Миграция с Windows
- Миграция в Docker
- Создание задания
- Настройка проверки подлинности AD DS
- Настройка FCI
- Развертывание кластера Pacemaker
- Создание и настройка группы доступности
- Развертывание в Kubernetes
- Настройка репликации
Управляемый экземпляр SQL Azure (PaaS)
Краткое руководство
- Создание экземпляра с помощью портала
- Создание экземпляра с помощью PowerShell
- Настройка общедоступной конечной точки
- Подключение виртуальной машины клиента
- Настройка подключения типа «точка — сеть»
- Восстановление резервной копии базы данных
Учебник
- Миграция с помощью службы Azure Database Migration Service
- Настройка репликации транзакций
- Добавление группы отработки отказа
- Перенос локальных пользователей и групп
- Настройка безопасности
10 способов начать изучать SQL бесплатно
Если вы подумываете о карьере в сфере технологий, особенно если вы хотите работать аналитиком данных или специалистом по данным, вам необходимо изучить SQL. SQL, сокращение от Structured Query Language, представляет собой стандартный язык программирования, используемый с 1970-х годов для проектирования, создания и управления реляционными базами данных. Но как выучить SQL бесплатно? Существуют ли бесплатные онлайн-тренинги и ресурсы для изучения SQL? Если коротко, то да, и в этой статье описаны отличные способы бесплатного изучения SQL.
В отличие от других языков программирования, которые создают приложения, веб-сайты и программное обеспечение, SQL позволяет хранить, извлекать и манипулировать данными в базах данных. Например, в то время как приложения обычно написаны на популярных языках, таких как Ruby или Python, базы данных требуют совершенно другой конфигурации. Вот где появляется SQL. SQL обычно произносится как «Sequel», хотя многие в отрасли называют его аббревиатурой «S.Q.L». Независимо от языка, SQL помогает программистам, работающим с данными:
- Добавление, обновление и удаление строк данных
- Изменение таблиц базы данных и структур индексов
- Создание таблиц и проектов баз данных
- Извлечение информации из баз данных для обработки транзакций и аналитики
Уникальная разметка SQL и использование таблиц позволяют SQL для настройки данных в столбцах и строках, позволяя пользователям SQL легко получать доступ, управлять и анализировать определенные наборы данных. В этом посте мы рассмотрим, почему SQL является основным инструментом базы данных для начинающих программистов и специалистов по данным, и как начать изучение основ SQL бесплатно.
Зачем изучать SQL?
SQL устарел. На самом деле настолько старый, что его изучение стало ритуалом для программистов, работающих с базами данных почти 50 лет. Так зачем изучать SQL, если это такой «древний» язык программирования?
Во-первых, SQL повсюду. Сегодня почти все предприятия, от семейных стартапов до компаний из списка Fortune 500, таких как Facebook, Netflix и Uber, используют данные для управления своей деятельностью. Для управления этими данными они полагаются на базы данных, которые постоянно масштабируются для удовлетворения растущих потребностей коммерции. К счастью, SQL является идеальным инструментом для запроса данных и выполнения анализа в крупномасштабных высокопроизводительных системах баз данных.
Во-вторых, чтобы удовлетворить растущие потребности, работодателям постоянно требуются технические специалисты с навыками работы с SQL, от аналитиков данных начального уровня до ученых и инженеров данных.
Наконец, SQL неизменно является лучшим языком для работы с данными. Фактически, согласно опросу Stack Overflow 2020 года, более 70% всех разработчиков, работающих с данными, используют SQL, что больше, чем любой другой язык. Кроме того, SQL остается самой популярной технологией среди ученых и аналитиков данных, опережая даже Python и R. Благодаря своей актуальности и стойкости SQL, несомненно, останется основной технологией на многие годы вперед.
Как выучить SQL бесплатно
Существуют тысячи способов изучения SQL в Интернете, некоторые из которых помогут вам начать работу с основами, а другие помогут начать карьеру. Итак, какой из всех доступных бесплатных ресурсов лучше всего подходит для изучения SQL?
Вот 10 бесплатных способов изучения SQL. Читайте дальше, чтобы узнать, какие варианты подходят вам лучше всего, включая то, что мы считаем лучшим способом изучения SQL.
1. Посмотреть видеоВизуалы радуются! Онлайн-руководство — отличный способ познакомиться с визуальными компонентами кодирования на SQL, одновременно изучая словарный запас SQL. Давайте посмотрим на некоторые из самых популярных вариантов видео.
- Ютуб. Мы все знаем, что YouTube — это настоящая сокровищница учебных пособий, и видеоролики по SQL — не исключение. Попробуйте «Изучение базового SQL за 10 минут» от StatisticalProgramming.Net, «Изучение SQL за 60 минут» от Web Dev Simplified или «Основы SQL для начинающих» от Edurik, чтобы бесплатно освоить основы SQL. Если вы застряли, поищите на YouTube конкретные темы SQL, в которых вам нужна помощь. Вы найдете видео буквально на все!
- Учебник FreeCodeCamp по SQL. Этот 4-часовой учебник YouTube для начинающих охватывает основы управления базами данных и SQL с использованием MySQL и RDBMS. В качестве бонуса в учебнике используются персонажи из «Офиса» для изучения концепций, что помогает вам быть вовлеченным И развлекаться.
Учебники могут быть полезным инструментом для начинающих, самостоятельно изучающих язык и программистов, которым необходимо быстро освежить знания. Вот некоторые из наших любимых.
- SQLCourse.com. Этот интерактивный онлайн-ресурс, полный интерактивных уроков и учебных пособий, отлично подходит для начинающих и профессионалов, которые хотят освежить в памяти основы. Уроки включают создание ваших собственных уникальных таблиц и выполнение операций выбора, вставки, обновления, удаления и удаления, а действия SQL на сайте обеспечивают немедленную обратную связь, чтобы помочь вам учиться в процессе работы.
- SQLBolt. Эти 19 интерактивных уроков для самостоятельного изучения начинаются с основ SQL-запросов и заканчиваются созданием таблиц и не только. Каждый урок заканчивается упражнением для закрепления знаний, и пользователи могут пропустить его, если им уже нравится тема урока.
- W3Schools. В этих обучающих главах, предназначенных для начинающих, рассказывается, как использовать SQL в таких системах баз данных, как MySQL, SQL Server, MS Access, Oracle, Sybase, Informix и Postgres. Уроки полны примеров, упражнений, викторин и ссылок, чтобы вы продолжали учиться по ходу дела.
- SQLZoo. Этот бесплатный учебный сайт по SQL, полный практических ссылок и упражнений, является идеальной целевой страницей для добавления в закладки. При необходимости посетите веб-сайт, чтобы ознакомиться с советами по работе с SQL, использованием SQL с C# или кратким руководством по JOIN, использованию Null или SUM и COUNT.
Изучение SQL может быть проще всего с профессионалами отрасли и в структурированной среде. Итак, вот несколько быстрых и популярных курсов, которые помогут вам начать работу с основами SQL.
- Введение Академии Кана в SQL: запросы и управление данными. Этот курс начального уровня является отличным введением в основы SQL, включая базовые навыки SQL, такие как создание таблиц, выбор, хранение, запросы и манипулирование данными. Последующие разделы охватывают расширенные запросы SQL, реляционные запросы, функции JOIN, изменение баз данных и многое другое. Лучшее в курсе то, что он самостоятельный.
- EdX. Благодаря бесплатным курсам, полученным от крупных университетов, таких как Нью-Йоркский университет, Гарвард и Стэнфорд, edX предоставляет множество ресурсов для новых и опытных программистов. Изучите основы SQL, расширенные концепции SQL или SQL для конкретных тем, таких как запросы или среды структурированных баз данных. Чтобы получить более углубленный курс для самостоятельного изучения SQL и других языков программирования, рассмотрите их 12-недельный курс «Введение в компьютерные науки» в HarvardX.
- Введение Udacity в реляционные базы данных. Этот бесплатный самостоятельный курс помогает программистам среднего уровня повысить уровень навыков работы с реляционными базами данных за 4 недели с помощью богатого учебного материала и интерактивных тестов.
- Удемы. Этот провайдер онлайн-курсов предлагает более 13 000 видеоресурсов и множество советов от отраслевых экспертов без необходимости полностью интерактивного курса. Попробуйте бесплатный онлайн-курс, например «Введение в базы данных и SQL-запросы», «Основы SQL» и «Расширенные базы данных и SQL-запросы».
Не готовы погрузиться в более сложные темы SQL? Затем вы можете изучить основы, которые вам понадобятся, чтобы в полной мере воспользоваться преимуществами изучения SQL, протестировав курс BloomTech Data Science — без финансовых обязательств. Безрисковая пробная версия дает вам 3 недели для ознакомления с курсом, никаких платежей или депозитов не требуется!
4. Обратитесь к ресурсу Зрители, обратите внимание (и сделайте закладку)! Вот несколько бесплатных и простых ресурсов, на которые можно ссылаться при изучении и использовании SQL.
- Шпаргалка по SQL. Этот репозиторий GitHub наполнен полезными запросами SQL и способами их использования, включая поиск данных, изменение данных, создание отчетов, JOIN, просмотр, изменение таблицы и создание запросов к таблице.
- Электронная книга SQL для веб-ботаников. Профессор Массачусетского технологического института Филип Гринспан обобщил свои знания и опыт работы с SQL вплоть до самого важного, от истории SQL до его текущих приложений. Эта электронная онлайн-книга и справочная страница содержат примеры, взятые из реального производства, и предназначены для чтения программистами среднего и опытного уровня.
В случае сомнений обратитесь к коллеге-программисту. К счастью, миллионы форумов обсуждают и отвечают на ваши вопросы по мере изучения SQL. Вот несколько тем, с которых можно начать.
- Реддит. От базовых функций, обсуждаемых в разделе «Изучение SQL», до интерактивных уроков и упражнений в разделе «Изучение программирования» — форумы и темы Reddit могут связать вас с другими программистами, чтобы помочь ответить на самые насущные вопросы и быстро найти ресурсы. Есть что-то конкретное спросить? Используйте строку поиска, чтобы найти именно то, что вы ищете. Скорее всего, другие, пытающиеся изучать SQL в Интернете, застряли там же, где и вы!
- Переполнение стека. Этот популярный дискуссионный сайт по программированию охватывает все технические темы, включая SQL. Присоединяйтесь к их сообществу для поиска тем или создайте команду для обмена техническими знаниями SQL.
- Обмен стеками. Этот технически подкованный сайт содержит сообщества экспертов по всем темам программирования, о которых вы только можете подумать. Начните с их функции поиска и просмотрите лучшие и наиболее релевантные ответы SQL в верхней части каждой страницы.
Бесплатные учебные курсы не всегда исчерпывающие, но они могут быть быстрым способом отточить ваши навыки работы с SQL. Подумайте об этих учебных курсах, которые могут вывести вас из зоны комфорта новичка в программировании.
- Класс Udemy по SQL 101: Bootcamp для начинающих. Введение в SQL NYC. Этот класс основан на личном учебном лагере в Нью-Йорке и представляет собой настоящий курс для начинающих, охватывающий основы аналитики SQL. Учебный курс обучает MYSQL с использованием онлайн-платформ и охватывает запросы и создание таблиц. Несмотря на то, что занятия очень практические, для их посещения учащимся не требуется предварительных знаний SQL или опыта программирования.
- Знакомство Datacamp с SQL. Этот бесплатный 4-часовой учебный курс посвящен запросам таблиц в реляционных базах данных, таких как MySQL, SQL Server и PostgreSQL. С помощью 41 упражнения он быстро охватит и проверит ваши навыки, связанные с выбором столбцов, фильтрацией строк, агрегатными функциями, а также сортировкой и группировкой.
Хотя у вас может не быть времени, чтобы получить традиционную степень, знание того, где найти лучший сертификат SQL, может значительно повысить вашу квалификацию. Получив сертификат SQL, вы сможете указать его в своем резюме или заявлении о приеме на работу.
Вот несколько вариантов для начала.
- Базовое обучение SQL через LinkedIn Learning: этот 3-часовой курс для начинающих даст вам общий обзор SQL, а также примеры из реальной жизни, которые помогут вам освоиться. Преподаватель и отраслевой эксперт Билл Вайнман научит студентов создавать таблицы, определять отношения, сортировать и фильтровать, использовать агрегатные функции, использовать триггеры для автоматизации действий, использовать представления и многое другое. В конце курса студенты научатся создавать простые приложения с использованием SQL и получат сертификат об окончании.
- Мичиганский университет. Введение в язык структурированных запросов (SQL). Этот бесплатный 16-часовой курс Coursera может похвастаться гибкими сроками завершения и охватывает основы SQL, MySQL, запросы, внешние ключи, операцию JOIN, реляционные базы данных и многое другое. Преподаваемый профессором Чарльзом Северансом, курс завершается бесплатным сертификатом об окончании.
- SQL Калифорнийского университета в Дэвисе для науки о данных. Этот бесплатный 14-часовой курс Coursera для начинающих охватывает основы науки о данных и анализа, включая SQL-запросы, таблицы и команды. Курс, который преподает консультант по стратегии искусственного интеллекта Сэди Сент-Лоуренс, завершается бесплатным сертификатом об окончании.
- Курс изучения SQL от Codecademy. Этот удобный для начинающих 7-часовой курс научит вас, как использовать SQL для доступа, создания, управления и обновления данных базы данных, выполнения сложных запросов, агрегирования функций и использования нескольких таблиц. Курс поможет студентам создать портфолио проектов, чтобы продемонстрировать свои новые навыки. Хотя курс бесплатный, вы можете перейти на учетную запись Pro за 15,99 долларов США в месяц, чтобы получить сертификат об окончании и получить доступ к реальным проектам, руководствам и поддержке коллег.
Многие из наиболее распространенных систем баз данных SQL бесплатны или имеют пробные версии, чтобы вам было удобно. Бесплатные базы данных SQL с открытым исходным кодом, такие как MySQL и PostgreSQL, остаются популярными вариантами, в то время как лидеры отрасли, такие как Microsoft SQL Server и Oracle, имеют бесплатные пробные версии. Загрузка такой базы данных SQL даст вам возможность пробовать и ошибаться, когда вы научитесь использовать SQL.
Начните с малого и найдите проект, использующий SQL для экспериментов. Как только вы освоитесь, ознакомьтесь с реальным набором данных, который вас интересует, и поэкспериментируйте с базой данных.
Ежедневная практика программирования с этим улучшит ваши навыки и поможет вам искать ответы по ходу дела. Ваша практика не только повысит вашу уверенность, но и вы сможете использовать подобные побочные проекты в своем портфолио.
Хотя существуют тысячи онлайн-курсов, большинство из них не готовят программистов к сложностям и задачам реального мира. Вот где на помощь приходит BloomTech.
Чтобы по-настоящему выучить SQL и другие языки программирования, вы должны не только изучить самые востребованные технологии у отраслевых экспертов, но и сделать еще один шаг в обучении. Таким образом, лучший способ изучить SQL — это BloomTech, где строгая программа Data Science Program помогает студентам освоить языки и фреймворки, необходимые сегодня в отрасли. Наша углубленная учебная программа по программированию посвящена SQL и другим основам науки о данных, таким как Python, визуализация данных, машинное обучение, линейная алгебра, базы данных, статистика и моделирование, обработка естественного языка и многое другое.
Почему мы так уверены, что наш курс Data Science — лучший способ изучить SQL? Наша программа онлайн-обучения является лучшим способом подготовиться к будущей технической карьере путем изучения SQL по нескольким основным причинам:
- Поддержка изучения SQL и многое другое . В отличие от почти всех бесплатных курсов обучения SQL в этой статье, BloomTech является интерактивным и предоставляет поддержку по мере обучения. Если вам нужно больше указаний, чем куча записанных видео, вы хотите задать вопросы экспертам по ходу работы и вам нужна поддержка в поиске работы, BloomTech — лучший вариант.
- Учитесь на реальных проектах. Просмотр видео и выполнение домашнего задания могут научить вас основам, но применение полученных знаний — это то, где вы добьетесь огромного прогресса. Вот почему в BloomTech задания основаны на реальных сценариях (например, использование SQL для создания баз данных и запросов к общедоступным наборам данных). Учащиеся BloomTech также работают в командах над созданием и поставкой продуктов для организаций, ориентированных на миссию, для решения серьезных задач, таких как решение проблемы бездомности и помощь детям в обучении чтению.
- Помощь в поиске работы. Начиная с первого дня вашего курса BloomTech, вы получите поддержку от нашей команды Career Services. Таким образом, вы будете готовы к работе — независимо от того, с каким большим (или небольшим) опытом программирования вы начнете. Мы поможем вам на каждом этапе процесса поиска работы, чтобы вы нашли хорошо оплачиваемую работу по душе.
В BloomTech мы стремимся предоставить большему количеству людей прямой и безопасный путь к высокооплачиваемой работе в сфере технологий. Вот почему мы предлагаем бесплатную пробную версию. Пробная версия позволяет вам испытать все, что получает официальный ученик, от углубленной учебной программы (как в режиме реального времени, так и по запросу), мероприятий, коучинга и поддержки 1: 1 и многого другого. С безрисковой пробной версией вы получаете 3 недели для тестирования BloomTech — без каких-либо депозитов, платежей или ввода информации о кредитной карте.
Хорошо звучит? Вы можете разблокировать безрисковую пробную версию примерно через 20 минут, запустив приложение и пройдя быструю оценку.
Готовы вывести свои навыки SQL на новый уровень?
Возможно, вы начали изучать SQL самостоятельно, но понимаете, что учебные пособия и бесплатные занятия не помогут вам. Возможно, вам нужно больше структурированности, поддержки и более глубокого погружения, чтобы углубить свое обучение, но вы не хотите тратить время на возвращение в школу. Что ж, у BloomTech может быть особый соус, который вы ищете.
Чтобы получить всестороннее образование в области компьютерных наук, рассмотрите программы BloomTech Data Science, Web Development и Backend Development, где отраслевые профессионалы научат вас всему, что вам нужно знать о фреймворках и языках, таких как SQL, ведущих сегодня в отрасли. Увлекаетесь SQL и хотите погрузиться глубже? Тогда программа Data Science отлично подойдет вам и поможет начать карьеру в области прикладной статистики или машинного обучения. Программа включает в себя подготовку к работе, поддерживающее наставничество и поддержку по принципу «равный-равному», чтобы помочь вам сохранить мотивацию. Кроме того, BloomTech предлагает курсы по компьютерным наукам и групповые лабораторные проекты, чтобы подчеркнуть ваши навыки, когда вы выходите на поле.
Подайте заявку в BloomTech, чтобы узнать о наших программах Data Science, Web Development и Backend Development. Начните свою новую карьеру уже сегодня!
Лучший способ выучить SQL (по мнению опытных разработчиков) — Dataquest
17 февраля 2021 г.
Какой лучший способ выучить SQL?
Со всеми доступными ресурсами изучение SQL «правильным способом» может быть затруднено. Найти лучший способ изучения SQL сложно, потому что каждый изучает вещи по-разному. Но, обучив десятки тысяч студентов и увидев, что работает, а что нет, мы придумали несколько простых шагов, которым может следовать каждый. Вот лучший способ выучить SQL:
Шаг 1. Определите, почему вы хотите изучать SQL
Прежде чем погрузиться в курс SQL, важно убедиться, что у вас есть хороший ответ на вопрос «Зачем мне изучать SQL?»
Это потому, что, хотя SQL не слишком сложен для изучения, ни одно обучение не проходит полностью гладко. Скорее всего, вы столкнетесь с моментами разочарования и замешательства. Если у вас нет веских причин для изучения SQL, вам будет очень легко бросить в такие моменты.
На этот вопрос нет однозначного ответа, но вот некоторые из наиболее распространенных причин, по которым люди хотят изучать SQL:
- Вы чувствуете себя узким местом в Excel и устали от ВПР
- Вы хотите иметь легкий доступ к данным вашей компании по запросу
- Вы хотите иметь возможность быстро работать с большими наборами данных
- Вы хотите получить работу аналитика данных, специалиста по данным или инженера данных (и вы знаете, что SQL является самым важным навыком для этих рабочих мест)
- Вы хотите создать прозрачные, воспроизводимые процессы обработки данных, чтобы уменьшить количество повторяющихся задач
Конечно, это всего лишь несколько общих причин. Вам нужно найти причину, которая говорит вам . Это может быть что-то очень конкретное, например, конкретный вопрос о ваших клиентах, на который вы хотели бы ответить, или конкретная информационная панель, которую вы хотели бы создать.
(Можете ли вы создать информационную панель с помощью SQL? Вроде того. Мы вернемся к этому позже!)
Шаг 2. Изучите базовый синтаксис
Обычно это не самая любимая часть изучения языка программирования (или, в данном случае, языка запросов). Но этого нельзя избежать. Вы просто не сможете перейти на функциональный уровень SQL , если не сможет посмотреть на что-то подобное и узнать, что происходит:
ВЫБЕРИТЕ c.name capital_city, f.name страна ИЗ фактов ф ВНУТРЕННЕЕ СОЕДИНЕНИЕ ( ВЫБЕРИТЕ * ИЗ городов ГДЕ столица = 1 ) c ON c.facts_id = f. id ПРЕДЕЛ 10;
К счастью, научиться этому может быть проще, чем вы думаете. Хотя на первый взгляд это может показаться сложным и запутанным, на самом деле синтаксис SQL довольно прост. И список команд SQL — слова, написанные заглавными буквами, такие как SELECT в приведенном выше коде, — которые вы на самом деле будете использовать на регулярной основе, невелик.
Ключ к успешному выполнению этого шага — пройти его как можно быстрее. Выделите несколько часов, чтобы сразу пройти весь первый курс Dataquest по SQL. Или выберите другой учебный ресурс и выделите достаточно времени, чтобы освоить основы.
Здесь самое главное, чтобы ты не затягивал. Вы хотите как можно быстрее добраться до того, чтобы действительно сделать вещей с помощью SQL, потому что способность копаться в реальных проблемах и находить ответы является мощным мотиватором. Это то, что действительно будет поддерживать вашу мотивацию и обучение, поэтому мы хотим, чтобы вы достигли этого как можно быстрее.
Шаг 3. Начните работу над управляемыми проектами
Как только вы изучите основы, пора приступить к реальным проектам с использованием SQL.
Если вы учитесь вместе с нами в Dataquest, это встроено в учебную программу с интерактивными управляемыми проектами, которые заставляют вас использовать свои новые навыки SQL для запросов и анализа реальных баз данных для получения ответов.
Если вы не учитесь с Dataquest, мы предлагаем следующий лучший вариант: управляемые проекты и учебные пособия.
Вам нужно найти что-то, что даст вам некоторую структуру и руководство, потому что на этом этапе процесс создания полного проекта SQL с нуля, вероятно, будет разочаровывающим. Вы хотите что-то, что вы можете попробуйте сделать это самостоятельно, но это также дает некоторые рекомендации, к которым вы можете обратиться, если вы заблудились или не знаете, что делать дальше.
Например, вот учебник по объединениям в SQL. Это было бы отличной практикой, но попробуйте проработать ее самостоятельно, проверяя фрагменты кода только для того, чтобы убедиться, что вы правы после того, как написали свои собственные запросы.
Помните, что здесь цель состоит в том, чтобы работать над управляемыми проектами с возрастающей самостоятельностью. Если вы просто копируете код из учебника, вы не многому научитесь, поэтому убедитесь, что вы приложили все усилия, прежде чем проверять ответ.
Шаг 4. Ознакомьтесь с полезными ресурсами SQL
После того, как вы выполнили несколько управляемых проектов, пора приступить к самостоятельной работе. Хорошая новость: вы можете работать именно с теми данными, которые вам нужны, чтобы отвечать именно на те вопросы, которые вам нужны. Как мотивирует!
Плохая новость: нет ключа ответа, который можно было бы проверить! Поэтому, прежде чем вы начнете свой первый проект, полезно добавить в закладки несколько полезных ресурсов SQL. Помните, нет ничего постыдного в поиске ответов в Google — даже самые опытные разработчики и пользователи SQL делают это часто!
Полезные ресурсы SQL:
- Изучение SQL, 2-е издание (PDF) — эта книга O’Reilly по основам SQL доступна бесплатно в формате PDF и является хорошим справочным материалом.
- вопросов SQL StackOverflow. Скорее всего, здесь уже дан ответ на любой ваш вопрос SQL. Но если он еще не создал учетную запись и попросите ее сами!
- Github — если SQL — ваш первый шаг в мир программирования, у вас может не быть здесь учетной записи. Если это так, настройте его и начните учиться его использовать! Github отлично подходит для того, чтобы поделиться своими SQL-проектами со всем миром (и потенциальными работодателями), а также это отличный ресурс для просмотра кода других людей.
- /r/SQL — на Reddit есть большое, активное сообщество SQL, которое (в основном) с удовольствием отвечает на вопросы.
- Сообщество Dataquest. Наше сообщество активно, дружелюбно и готово помочь вам со всеми вашими вопросами по SQL. Лучше всего то, что он открыт для всех — вам не обязательно быть подписчиком Dataquest, чтобы получить там помощь.
Шаг 5. Создание собственных проектов SQL
Теперь, когда вы знаете несколько хороших мест, куда можно обратиться за помощью, когда вы застряли, пришло время начать работать над своими собственными проектами SQL.
Вот где ответ, который вы получили на шаге 1, действительно начинает иметь значение. Знание того, почему вы хотите изучать SQL, вероятно, поможет вам ответить на вопрос: над какими проектами мне следует работать?
Краткий ответ? Работайте над проектами, которые вам небезразличны. Если вы изучаете SQL, потому что вам надоело, что Excel замедляет вашу работу, то ваш первый проект, вероятно, должен заключаться в том, чтобы выяснить, как более эффективно выполнять эти рабочие задачи с помощью SQL.
Если вы изучаете SQL, потому что вам нужна определенная работа, вам следует работать над проектами SQL, которые максимально приближены к тому, чем вы на самом деле будете заниматься, когда получите работу. Например, если вы увлечены обработкой данных, чтобы помочь сократить выбросы углерода и сделать вещи более энергоэффективными, то вы, вероятно, захотите работать над проектами, связанными с этой целью.
Обратите внимание: этот шаг может быть немного сложным, если вы не работаете в компании или не хотите использовать данные компании для своих проектов. Найти общедоступную базу данных SQL, содержащую именно те данные, с которыми вы хотите работать, может быть сложно, в зависимости от ваших целей.
Но никогда не бойся! Хотя это требует немного дополнительных усилий, возможно преобразовать любые загружаемые данные, которые вы найдете в формате CSV (или что-то подобное), в формат базы данных SQL, такой как таблица SQLite. Есть даже сайты, которые могут сделать процесс конвертации довольно простым.
С какими бы данными вы ни хотели работать, немного покопавшись, вы сможете найти способ работать с ними с помощью SQL.
И не забывайте: делитесь своими проектами SQL на Github, когда закончите с ними работать. Возвращайтесь и обновляйте их, когда узнаете что-то новое!
Шаг 6. Создавайте более сложные проекты
Последний шаг, по сути, является продолжением шага 5, и вы можете повторять его столько, сколько захотите. Ключом к продолжению обучения здесь является то, что вы должны наращивать вызов.
После того, как вы научились создавать проект SQL, который изначально мотивировал вас (например, вы написали запрос, который заменит ваш старый рабочий процесс Excel), может возникнуть соблазн продолжать делать проекты в том же духе.
Делать одно и то же снова и снова полезно для удержания, но это будет тормозить ваш рост. Лучше всего постараться убедиться, что с каждым новым проектом вы учитесь или пробуете хотя бы одну новую вещь — то, чего вы еще не знаете, как делать.
Это может означать, что вы беретесь за совершенно новый проект, или это может означать пересмотр старого проекта, чтобы придать ему новую сложность.
Это также может означать, что вам придется принять вызов, о котором вы, возможно, раньше не думали, например:
- Можете ли вы интегрировать свои навыки SQL с таким инструментом, как Mode, для создания информационной панели?
- Можете ли вы научить кого-нибудь делать запросы к базе данных вашей компании с помощью SQL?
К этому моменту у вас будут навыки, позволяющие делать более или менее все, что вы хотите, с помощью SQL — не потому, что вы знаете, как делать все, а потому, что ваш процесс создания проекта научил вас, как находить ответы на любые вопросы. не знаю .
Изучайте SQL правильно!
- Написание реальных запросов
- Работа с реальными данными
- Прямо в браузере!
Зачем пассивно смотреть видеолекции, если можно учиться, делая ?
Зарегистрируйтесь и начните учиться!
Часто задаваемые вопросы о SQL:
Сложно ли изучать SQL?
Это очень личный вопрос — то, что очень просто для одного человека, может показаться очень сложным для другого, и наоборот. Тем не менее, большинство людей находят SQL довольно простым в изучении, особенно по сравнению с полноценными языками программирования, такими как Python или R.
Это потому, что в отличие от «полного» языка программирования SQL — это язык запросов. Он создан специально для взаимодействия с системами управления реляционными базами данных, такими как Microsoft SQL Server, Oracle, SQLite, MySQL и т. д. По этой причине не так много нужно изучать, и некоторые из более сложных концепций, которые необходимы в более целостном программировании языки не являются фактором в SQL.
Тем не менее, тот факт, что большинство людей находят SQL относительно простым для изучения, не означает, что вы его изучите или что вам должно быть стыдно, если он покажется вам сложным! В частности, если это ваше первое знакомство с миром программирования, вы должны быть готовы к трудностям.
(Но не волнуйтесь. Независимо от того, какой у вас опыт, вы можете полностью выучить SQL. Наше сообщество готово помочь вам в любое время, когда вам это нужно!)
SQL или Python: что лучше учить?
Ответ на этот вопрос зависит от ваших целей. Это очень разные вещи.
SQL — это язык запросов. Это действительно полезно только для взаимодействия, фильтрации и легкого анализа данных из баз данных. Он предлагает много возможностей для работы с данными в этих контекстах, но он не может делать все то, что может делать полноценный язык программирования, такой как Python.
Python — это язык программирования. Это делает его немного более сложным для изучения, но это также означает, что он может делать гораздо больше. Вы можете анализировать данные в Python, но вы также можете использовать его для создания моделей машинного обучения. Или делать видеоигры. Или запрограммировать робота. Или дизайнерское искусство.
Если вы часто работаете с данными — если вы открываете электронные таблицы каждый день и знаете, что такое ВПР — велика вероятность, что вам будет полезно изучить оба языка.
В Dataquest мы преподаем как Python, так и SQL в рамках нашей карьеры аналитика данных и специалиста по данным. Оба навыка необходимы для работы с данными на полный рабочий день (хотя R можно заменить Python, изучение SQL не подлежит обсуждению).
Можете ли вы выучить SQL самостоятельно?
Да. Мы видели, как тысячи студентов делали именно это, работая над нашими интерактивными курсами SQL в свободное время и в своем темпе.
Даже если вы не используете Dataquest, вполне возможно выучить SQL самостоятельно. Тем не менее, наличие поддерживающего сообщества, к которому вы можете обратиться за помощью, безусловно, может облегчить ситуацию!
Как быстро вы можете выучить SQL?
Короткий ответ: довольно быстро.
Более длинный ответ: вы можете изучить основы — достаточно, чтобы работать — довольно быстро. Даже при неполном обучении (например, работа над SQL по вечерам после работы на полный рабочий день) многие учащиеся, которые никогда раньше не занимались программированием, могут достичь своих целей и получить возможность выполнять независимые проекты SQL всего за несколько месяцев.
Если у вас есть некоторый опыт программирования и/или вы готовы каждый день уделять немного больше времени обучению, вы можете выучить достаточно SQL, чтобы достичь своих целей еще быстрее!
Но при этом изучение SQL похоже на изучение любого языка — на самом деле никогда не бывает конечной точки.