всичко, което трябва да знаете, за да започнете работа с SQL
SQL, известен още като Structured Query Language, или на български преведено Структуриран език за заявки, е мощен инструмент за търсене в големи обеми данни и връщане* (още извличане) на конкретна информация за анализ и други цели. Изучаването на SQL е от решаващо значение за всеки, който се стреми да бъде програмист, анализатор на данни, инженер на данни или учен за данни, а и също така е полезно и в много други области като уеб разработки или маркетинг.
Добрата новина е, че е лесно да се научи SQL, и то онлайн и само за един – два месеца – много амбициозни професионалисти в областта на данните започват със SQL и чак след това преминават към по-сложни езици за програмиране като Python и R. SQL има много други предимства, включително гъвкавост при работа с милиони редове данни и тяхната универсалност в различните дисциплини и отрасли. Анализът на данните, направен в SQL, е лесен за одит и репликация, особено в сравнение с инструментите като електронни таблици.
SQL съществува от 70-те години и е много популярен и използван. В тази статия ще ви преведем през всичко необходимо за да започнете работа с езика SQL.
Какво трябва да знаете, преди да започнете
SQL и релационните бази данни
Много организации използват релационна база данни за съхраняване и обработка на големи количества данни . Със SQL (произнася се или като „ sequel“ (сийкъл) или като „ess-que-ell“ (ес-кю-ел), можете да „заявите“ или да зададете въпроси относно данните в дадена релационна база данни. С други думи, SQL е езикът за програмиране, използван за комуникация с тези бази данни. Всяка база данни използва свой собствен SQL диалект, но всички те споделят един и същ основен синтаксис.
Различните SQL диалекти
Въпреки че всички езици на SQL споделят една основна структура, някои от специфичните команди и стилове могат да се различават. С толкова много SQL диалекти може да се окаже трудно да знаете откъде да се започне. Популярните диалекти включват MySQL, SQLite и SQL Server, но ние препоръчваме да започнете с PostgreSQL – това е най-близкият до стандартния SQL синтаксис, така че лесно се адаптира към други диалекти на следващ етап. Разбира се, ако компанията, в която работите вече използва друга база данни, ще трябва да научите съвместимия диалект за нея.
4 стъпки за научаване на SQL
Изучаването на SQL не изисква предварителни познания по програмиране, така че е чудесно за начинаещи. Отдайте няколко седмици на тези четири стъпки и ще бъдете здраво стъпали на мечтания път към кариерата си за анализ на данни.
1. Научете основния синтаксис на SQL
Ще трябва да разберете основите на синтаксиса на SQL, включително функциите SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY и LIMIT. Различните SQL диалекти използват много подобен синтаксис, но все пак има малки изключения.
При SQL редът на написания код се различава от реда на изпълнение . Така че ще трябва да разберете правилната структура на заявките и реда, в който трябва да бъдат написани заявките.
TL; DR: Вашата заявка винаги ще се нуждае от операторите SELECT и FROM (за да идентифицира кои колони искате да се върнат и от коя таблица) – другите не са задължителни.
2. Изкарайте онлайн курс за SQL
Можете да се научите как да използвате SQL в производствена среда дори преди дори да имате достъп до база данни. Най-добрият начин да научите SQL е с практически курсове, които въвеждат в основните концепции и ви запознават със SQL кода. Курсът „ Въведение в SQL“ на DataCamp е брилянтен преглед – това е първият курс от раздела за основите на SQL . W3Schools и нашият SQL урок, Codecademy и разбира се, Khan Academy със Въведение в SQL също са отлични.
3. Започнете да практикувате с реални данни
Най-добрият начин да овладеете SQL е като практикувате в собствената си среда – така че ще трябва да инсталирате сървър за база данни. Ако вашата компания вече използва такъв, трябва да преминете през подходящите канали, за да я инсталирате във вашата система. На вас (или на вашата компания) може да ви е по-удобно да работите в дублирана база данни, която първоначално не е свързана с активни данни – и това е добре!
Можете също така да инсталирате безплатна база данни, като PostgreSQL (PGadmin) , SQLite или MySQL; или следвайте нашия урок стъпка по стъпка за това как да инсталирате SQL Server .
След това ще ви трябват някои данни, с които да поиграете. За предпочитане е да използвате реални данни от вашата компания, за да можете да започнете да изследвате важни за вас данни. Като алтернатива можете да изтеглите публичен набор от данни чрез Kaggle или freeCodeCamp Open Data.
4. Подгответе се за работа, която изисква SQL
Толкова много роли и работни позиции днес изискват знания за SQL, а ежедневното кодиране е най-добрият начин да станете експерт. Преди да започнете да кандидатствате за работни места, можете първо да отстраните всякакви налични пропуски във вашия SQL репертоар. Докато кандидатствате за позиции, не забравяйте да приспособите автобиографията си към ролята, която да се откроява. И ако попаднете на това желано интервю за работа, трябва да знаете как да отговорите на топ 13 въпроса за интервю за SQL.
Смисълът на техническото интервю е да убеди работодателя, че можете да използвате технологията за решаване на практически, реални проблеми
По време на техническо интервю ще трябва да покажете, че имате задълбочени познания за уменията и езиците, за които твърдите, че притежавате.
Трябва да знаете основните въпроси задавани на интервюто за работа с SQL
Преди да можете да започнете да отговаряте на разширените технически въпроси за SQL, има няколко основи, от които трябва да започнете. Интервюиращите често обичат да включват един или повече „лесни“ въпроси за дадена технология, за да са сигурни, че наистина знаете нещата.
Какво е релационна база данни, може да попитате? Това е база данни, която използва релационния модел, който съхранява информация под формата на таблици с редове и колони. Всеки ред представлява различен запис или обект. Всяка колона представлява различно поле или атрибут на този обект.
Например университет може да използва RDMS за съхраняване на информация за своите студенти:
Една таблица съдържа лична информация на учениците. Всеки ред в таблицата представлява различен ученик. Всяка колона представлява различен атрибут за ученика: собствено име, фамилия, адрес, имейл, идентификационен номер и т.н.
Втора таблица съдържа информация за учениците в даден клас. Всеки ред в таблицата представлява различен ученик. Всяка колона представлява различен атрибут: собствено име, фамилия, идентификационен номер, оценки по различни задания за домашна работа и изпити и т.н.
Познати ли сте с програми за електронни таблици като Microsoft Excel? Ако е така, вече разбирате основната идея зад релационния модел на данни. Един файл на Excel има структура, много подобна на една таблица в релационна база данни.
Термините „SQL база данни“ и „релационна база данни“ често се използват синонимно, въпреки че не са съвсем едно и също нещо. Въпреки че SQL се използва практически за всеки съвременен RDMS, няма правило, което да изисква това да бъде.
Няколко експериментални проекта, като Rel, се стремят да внедрят релационна база данни с различен език за заявки.
Microsoft SQL Server
MySQL
База данни на Oracle
IBM DB2
Повечето корпоративни версии на бази данни на SQL идват със собствен „диалект“ на SQL. Например Oracle е създал PL / SQL разширението на SQL, докато Microsoft SQL Server използва езика Transact-SQL.
Тези различни версии на SQL обикновено са доста сходни като цяло. Въпреки това, всеки има свои собствени характеристики и странности, за да го различи от другите опции.
Има няколко нерелационни модела за съхранение на данни, включително:
Ключ-стойност: Всеки елемент в базата данни е ключ, сдвоен със съответна стойност.
Документ: Всеки елемент в базата данни е документ, който съхранява данни в стандартен формат и след това е свързан с уникален ключ.
Колона: Данните се съхраняват в колони вместо в редове, за да се подобри производителността за определени типове заявки.
Графика: Данните се съхраняват като графика с възли и ръбове, които описват връзките между различни елементи.
Някои от най-популярните бази данни NoSQL са MongoDB, Apache Cassandra, HBase и Redis.
За разлика от базите данни на SQL (които използват SQL), базите данни NoSQL не използват един стандартен език за заявки за взаимодействие с данни.
Технически въпроси, които трябва да знаете за интервю за SQL
След като усвоите основните знания по-горе, е време да преминете към някои въпроси за интервю за SQL, които са малко по-сложни.
Практика, практика, практика!
Изучаването на SQL е като изучаването на който и да е друг език – необходима е постоянна практика, за да останете релевантни и да знаете новите неща! Отделяйте малко време всеки ден или поне веднъж седмично, за да практикувате уменията си за SQL кодиране. Продължавайте и ще станете SQL суперзвезда за нула време!
* Казва се връщане, тъй като след пускане на заявката се връща отговор от системата – било то данните, които сме заявили или отговор, че такива данни няма в базата данни. След като сървъра (системата) ни върне данните, ние имаме отговорността да извършваме с тях каквото ни е угодно.
- Създаване на списък с Vue компоненти
- Създаване на Vue компоненти
- Първи стъпки с Vue JS
- Пълно ръководство за респонсив изображения!
- Въведение в Git: работа с отдалечено репозитори