ДНЕВНИК СТУДЕНТКИ: Intro to SQL (конспект первой части курса)
Я принимаю участие в проекте Академия Голоса и очень этому рада. Мне нравится, что благодаря гарантированным вознаграждениям больше людей учится :)
Свое второе задание я выбрала из раздела Программирование, курс INTRO TO SQL: QUERYING AND MANAGING DATA на Khan Academy.
Я знаю, что среди читателей есть много крутых программистов и введение в SQL может выглядеть как детский лепет на лужайке. Все мы в чем-то когда-то были новичками, пока не приложили достаточно усилий, чтобы обрести мастерство.
ЧТО ТАКОЕ SQL?
В мире полно данных, каждую секунду производится огромное количество информации и надо ее как-то хранить, управлять, извлекать ценность.
в 1970 году IBM создали SEQUEL, расшифровывается как Structured English QUEry Languages. Потом они сократили название до SQL так как SEQUEL уже было занято авиакомпанией и никто не хотел судиться по поводу торговой марки.
SQL (structured query language — «язык структурированных запросов») — язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных.
Понятие «реляционный» основано на англ. relation («отношение», «зависимость», «связь»).
КАК ПРАВИЛЬНО ПРОИЗНОСИТЬ?
Можно встретить 2 разных способа произносить SQL:
- эскьюэль
- сиквэль
Вообще, логично говорить "эскьюэль". А те, кто говорит как во втором варианте, они используют изначальное название.
Я говорю "эскьюэль", а вы?
Создание пустой таблицы
Пример того, как создавать таблицу под названием customers
CREATE TABLE customers (id INTEGER PRIMARY KEY, name TEXT, age INTEGER, weight REAL);
В скобочках написано то, что в таблице есть столбцы с именами и типом данных в ячейках этого столбца:
- id и тип данных INTEGER PRIMARY KEY
- name и тип данных TEXT
- age и тип данных INTEGER
- weight и тип данных REAL
Добавление данных в таблицу
Пример того, как в таблицу customers вставлять строку с данными:
INSERT INTO customers VALUES (73, "Brian", 33);
Пример выполненного задания
Задание состоит из 2 мини-шагов:
- шаг 1 - создаю простую таблицу
CREATE TABLE
под названиемbooks
с тремя столбцами под названием id name и rating
CREATE TABLE books (id INTEGER PRIMARY KEY, name TEXT, rating INTEGER);
- шаг 2 - добавляю в таблицу 3 строки с данными о трех книгах
INSERT INTO books VALUES (1, "The Selfish Gene", 50);
INSERT INTO books VALUES (2, "Max Fray", 100);
INSERT INTO books VALUES (3, "The Girl with the Dragon Tattoo", 75);
Вот скриншот того, как выглядит мое задание
Создание простых запросов
Пример того, как выбрать всё из таблицы customers. За "все" отвечает звездочка
SELECT * FROM customers;
Сортировка запросов
Пример того, как выбрать всё (всех потребителей/customers) из таблицы customers, у которых возраст больше 21 и они из штата (state) Нью-Йорк (NY)
SELECT * FROM customers WHERE age < 21 AND state = "NY";
Пример выполненного задания
В этом задании надо работать с уже созданной таблицей, научиться обращаться к ней за данными и сортировать их.
- шаг 1 - создаю запрос, выбираю все из таблицы под названием movies все.
SELECT * FROM movies;
- шаг 2 - создаю еще один запрос, выбираю из таблицы movies все, где "год выпуска" после 2000 года и располагаю результаты по возрастанию.
SELECT * FROM movies WHERE release_year > 2000 ORDER BY release_year ASC;
Агрегирование данных
Пример того, как выбрать потребителя, у которого самый большой возраст из таблицы customers
SELECT MAX(age) FROM customers;
Пример выполненного задания
В этом задании представлена таблица todo_list.
- шаг 1 - вставляю в таблицу одну строку
INSERT INTO todo_list VALUES (4, "dancing", 30);
- шаг 2 - агрегируя данные и считаю сколько минут надо на выполнение всех заданий
SELECT SUM(minutes) FROM todo_list;
В конце первой части курса студенту надо сделать проект store: создать таблицу, вставить в нее информацию, сделать несколько запросов, использовать функции. Вот:
"Основываясь на изученных материалах, какой самый полезный и выгодный совет ты можешь дать сообществу Голоса?"
Я советую всем, кто еще не начал изучать программирование - попробуйте! А кто забросил учебу, потому что было сложно - совершите новый подход! Этот курс на Khan Academy очень хорошо сделан и инструктор доступно объясняет.
Мои мысли
Самообучение программированию с помощью интерактивных курсов - это как игра. Именно логическая игра с множеством подсказок. Если постараться отбросить предубеждения по поводу учебы, которые сформировались у нас по стечению социальных и исторических обстоятельств, и посмотреть на самообразование как на интересное и выгодное занятие, в жизни создается большой потенциал :)
Подписывайтесь на мой дневник!