Если бы каждый разработчик и аналитик соблюдал простые правила, реверс-инжиниринг стал бы приятным развлечением, а не трудоемкой работой.
Чтобы облегчить работу с БД себе и коллегам, попробуйте эти простые правила:
1. Разделять слова подчеркиванием, если имя атрибута или таблицы БД состоит из 2-х и более слов. Это понятнее стиля camelCase, улучшает читаемость и снижает зависимость от платформы. Например, word_count.
2. Называть таблицы и столбцы полным и семантически понятными именами без привязки к типам данных. Экономия пары символов не даст ничего, кроме путаницы. Допустимо применять сокращения только там, где это всем известная аббревиатура.
3. Писать название атрибута со строчной буквы, чтобы избежать путаницы с ключевыми словами SQL в верхнем регистре. Это также повысит скорость набора текста.
4. Не использовать цифры в названии таблиц и столбцов.
5. Называть таблицы понятно, но кратко.
6. Называть таблицы и столбцы в единственном числе. Например, author вместо authors
7. Называть таблицы-связки в алфавитном порядке. Например, author_book
8. При создании индекса называть его по имени таблицы и столбца. Например,
CREATE INDEX person_ix_first_name_last_name ON person (first_name, last_name);
9. Для столбцов типа Boolean к имени добавлять префикс is_ или has_ . Например, is_admin или has_membership.
10. Для столбцов типа Date-Time к имени добавлять суффикс _at или _time. Например, ordered_at или order_time.
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35🔥4❤3
🔥 Top it channels
⭐️ Нейронные сети
@data_analysis_ml - data science
@vistehno - chatgpt ведет блог, решает любые задачи и отвечает на любые ваши вопросы.
@aigen - сети для генерации картинок. видео, музыки и многого другого.
@neural – погружение в нейросети.
🖥 SQL базы данных
@sqllib - библиотека баз данных
@sqlhub - повышение эффективности кода с грамотным использованием бд.
@chat_sql - чат изучения бд.
🖥 Machine learning
@ai_ml – погружение в нейросети, ai, Chatgpt, midjourney, машинное обучение.
@machinelearning_ru – машинное обучении на русском от новичка до профессионала.
@machinelearning_interview – подготовка к собеседованию.
@datascienceiot – бесплатные книги Machine learning
@ArtificialIntelligencedl – канал о искусственном интеллекте
@machinee_learning – чат о машинном обучении
@datascienceml_jobs - работа ds, ml
@Machinelearning_Jobs - чат работы мл
🖥 Python
@pythonl - главный канал самого популярного языка программирования.
@pro_python_code – учим python с ментором.
@python_job_interview – подготовка к Python собеседованию.
@python_testit - проверочные тесты на python
@pythonlbooks - современные книги Python
@python_djangojobs - работа для Python программистов
@python_django_work - чат обсуждения вакансий
🖥 Javascript / front
@react_tg - - 40,14% разработчиков сайтов использовали React в 2022 году - это самая популярная библиотека для создания сайтов.
@javascript -канал для JS и FrontEnd разработчиков. Лучшие практики и примеры кода. Туториалы и фишки JS
@Js Tests - каверзные тесты JS
@hashdev - погружение в web разработку.
@javascriptjobjs - отборные вакансии и работа FrontEnd.
@jsspeak - чат поиска FrontEnd работы.
🖥 Java
@javatg - выучить Java с senior разработчиком по профессиональной методике.
@javachats - чат для ответов на вопросы по Java
@java_library - библиотека книг Java
@android_its - Android разработка
@java_quizes - тесты Java
@Java_workit - работа Java
@progersit - шпаргалки ит
👣 Golang
@Golang_google - восхитительный язык от Google, мощный и перспективный.
@golang_interview - вопросы и ответы с собеседований по Go. Для всех уровней разработчиков.
@golangtests - интересные тесты и задачи GO
@golangl - чат изучающих Go
@GolangJobsit - отборные вакансии и работа GO
@golang_jobsgo - чат для ищущих работу.
@golang_books - полезные книги Golang
@golang_speak - обсуждение языка Go
🖥 Linux
@linux -топ фишки, гайды, уроки по работе с Linux.
@linux chat - чат linux для обучения и помощи.
@linux_read - бесплатные книги linux
👷♂️ IT работа
@hr_itwork -кураторский список актуальных ит-ваканнсии
🤡It memes
@memes_prog - ит-мемы
⚙️ Rust
@rust_code - Rust избавлен от болевых точек, которые есть во многих современных яп
@rust_chats - чат rust
#️⃣ c# c++
C# - объединяет лучшие идеи современных языков программирования
@csharp_cplus чат
С++ - Универсальность. Возможно, этот главный плюс C++.
📓 Книги
@programming_books_it - большая библиотека. программиста
@datascienceiot -ds книги
@pythonlbooks - python библиотека.
@golang_books - книги Golang
@frontendbooksit - front книги
@progersit - ит-шпаргалки
@linux_read - Linux books
@java_library - Java books
🖥 Github
@github_code - лучшие проекты с github
@bigdatai - инструменты по работе с данными
🖥 Devops
Devops - специалист общего профиля, которому нужны обширные знания в области разработки.
📢 English for coders
@english_forprogrammers - Английский для программистов
💡 ChatGpt bot
@Chatgpturbobot - бесплатный бот ChatGpt
@data_analysis_ml - data science
@vistehno - chatgpt ведет блог, решает любые задачи и отвечает на любые ваши вопросы.
@aigen - сети для генерации картинок. видео, музыки и многого другого.
@neural – погружение в нейросети.
@sqllib - библиотека баз данных
@sqlhub - повышение эффективности кода с грамотным использованием бд.
@chat_sql - чат изучения бд.
@ai_ml – погружение в нейросети, ai, Chatgpt, midjourney, машинное обучение.
@machinelearning_ru – машинное обучении на русском от новичка до профессионала.
@machinelearning_interview – подготовка к собеседованию.
@datascienceiot – бесплатные книги Machine learning
@ArtificialIntelligencedl – канал о искусственном интеллекте
@machinee_learning – чат о машинном обучении
@datascienceml_jobs - работа ds, ml
@Machinelearning_Jobs - чат работы мл
@pythonl - главный канал самого популярного языка программирования.
@pro_python_code – учим python с ментором.
@python_job_interview – подготовка к Python собеседованию.
@python_testit - проверочные тесты на python
@pythonlbooks - современные книги Python
@python_djangojobs - работа для Python программистов
@python_django_work - чат обсуждения вакансий
@react_tg - - 40,14% разработчиков сайтов использовали React в 2022 году - это самая популярная библиотека для создания сайтов.
@javascript -канал для JS и FrontEnd разработчиков. Лучшие практики и примеры кода. Туториалы и фишки JS
@Js Tests - каверзные тесты JS
@hashdev - погружение в web разработку.
@javascriptjobjs - отборные вакансии и работа FrontEnd.
@jsspeak - чат поиска FrontEnd работы.
@javatg - выучить Java с senior разработчиком по профессиональной методике.
@javachats - чат для ответов на вопросы по Java
@java_library - библиотека книг Java
@android_its - Android разработка
@java_quizes - тесты Java
@Java_workit - работа Java
@progersit - шпаргалки ит
@Golang_google - восхитительный язык от Google, мощный и перспективный.
@golang_interview - вопросы и ответы с собеседований по Go. Для всех уровней разработчиков.
@golangtests - интересные тесты и задачи GO
@golangl - чат изучающих Go
@GolangJobsit - отборные вакансии и работа GO
@golang_jobsgo - чат для ищущих работу.
@golang_books - полезные книги Golang
@golang_speak - обсуждение языка Go
@linux -топ фишки, гайды, уроки по работе с Linux.
@linux chat - чат linux для обучения и помощи.
@linux_read - бесплатные книги linux
👷♂️ IT работа
@hr_itwork -кураторский список актуальных ит-ваканнсии
🤡It memes
@memes_prog - ит-мемы
⚙️ Rust
@rust_code - Rust избавлен от болевых точек, которые есть во многих современных яп
@rust_chats - чат rust
#️⃣ c# c++
C# - объединяет лучшие идеи современных языков программирования
@csharp_cplus чат
С++ - Универсальность. Возможно, этот главный плюс C++.
📓 Книги
@programming_books_it - большая библиотека. программиста
@datascienceiot -ds книги
@pythonlbooks - python библиотека.
@golang_books - книги Golang
@frontendbooksit - front книги
@progersit - ит-шпаргалки
@linux_read - Linux books
@java_library - Java books
@github_code - лучшие проекты с github
@bigdatai - инструменты по работе с данными
Devops - специалист общего профиля, которому нужны обширные знания в области разработки.
@english_forprogrammers - Английский для программистов
@Chatgpturbobot - бесплатный бот ChatGpt
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥4❤1
Исключить дубли из выборки можно просто добавив к SQL-запросу ключевое слово
DISTINCT
. Однако, это простое решение не всегда будет верным. Чтобы гарантировать отсутствие дубликатов в наборе данных, СУБД необходимо сравнить все строки друг с другом, отсеяв повторы. Это требует много ресурсов ЦП и памяти для хранения всех строк, т.к. их нужно сравнивать друг с другом в памяти, даже если на низком уровне идет работа с хэшем. Кроме того,
DISTINCT
уменьшает параллелизм вычислений, снижая скорость выполнения запроса. DISTINCT удаляет дубликаты, но не разрешает неправильные соединения и фильтры, которые на практике чаще всего и приводят к повторам, например, из-за CROSS JOIN или использования RANK вместо ROW_NUMBER, что приводит к дублированию из-за плохо определенного окна раздела.
Подробности с примерами кода смотрите здесь: https://jmarquesdatabeyond.medium.com/sql-like-a-pro-please-stop-using-distinct-31bdb6481256
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤3🔥3
Мэри — учительница в средней школе. У неё есть таблица seat, хранящая имена учеников и сведениях об их местах в классе. Значение id в этой таблице постоянно возрастает. Мэри хочет поменять местами соседних учеников.
Вот таблица исходного размещения учеников:
+---------+---------+
| id | student |
+---------+---------+
| 1 | Abbot |
| 2 | Doris |
| 3 | Emerson |
| 4 | Green |
| 5 | Jeames |
+---------+---------+
Вот что должно получиться после пересаживания соседних учеников:
+---------+---------+
| id | student |
+---------+---------+
| 1 | Doris |
| 2 | Abbot |
| 3 | Green |
| 4 | Emerson |
| 5 | Jeames |
+---------+---------+
Напишите запрос, который позволит учительнице решить вышеописанную задачу.
Обратите внимание на то, что если количество учеников является нечётным — последнего ученика никуда пересаживать не надо.
▍Решение: использование оператора
WHEN
SQL-конструкцию CASE WHEN THEN можно рассматривать как оператор if в программировании.
В нашем случае первый оператор
WHEN
используется для проверки того, назначен ли последней строке в таблице нечётный идентификатор. Если это так — строка не подвергается изменениям. Второй оператор WHEN
отвечает за добавление 1 к каждому нечётному идентификатору (например — 1, 3, 5 превращается в 2, 4, 6) и за вычитание 1 из каждого чётного идентификатора (2, 4, 6 превращаются в 1, 3, 5).SELECT
CASE
WHEN((SELECT MAX(id) FROM seat)%2 = 1) AND id = (SELECT MAX(id) FROM seat) THEN id
WHEN id%2 = 1 THEN id + 1
ELSE id - 1
END AS id, student
FROM seat
ORDER BY id
Пишите свое решение в комментариях👇
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥5❤3😁1
В таблице Employee хранятся сведения о сотрудниках компании. В каждой записи этой таблицы содержатся сведения об идентификаторе (Id) сотрудника, о его имени (Name), о зарплате (Salary) и о подразделении компании, где он работает (Department).
+----+-------+--------+--------------+
| Id | Name | Salary | DepartmentId |
+----+-------+--------+--------------+
| 1 | Joe | 70000 | 1 |
| 2 | Jim | 90000 | 1 |
| 3 | Henry | 80000 | 2 |
| 4 | Sam | 60000 | 2 |
| 5 | Max | 90000 | 1 |
+----+-------+--------+--------------+
В таблице Department содержатся сведения о подразделениях компании.
+----+----------+
| Id | Name |
+----+----------+
| 1 | IT |
| 2 | Sales |
+----+----------+
Напишите SQL-запрос, который находит в каждом из подразделений сотрудников с максимальной заработной платой. Например, для вышеприведённых таблиц подобный запрос должен возвращать результаты, представленные следующей таблицей (при этом порядок строк в таблице значения не имеет):
+------------+----------+--------+
| Department | Employee | Salary |
+------------+----------+--------+
| IT | Max | 90000 |
| IT | Jim | 90000 |
| Sales | Henry | 80000 |
+------------+----------+--------+
▍Решение: команда IN
Команда IN позволяет задавать в инструкции WHERE условия, соответствующие использованию нескольких команд OR. Например, две следующие конструкции идентичны:
WHERE country = ‘Canada’ OR country = ‘USA’
WHERE country IN (‘Canada’, ’USA’).
Здесь мы хотим получить таблицу, содержащую название подразделения (Department), имя сотрудника (Employee) и его заработную плату (Salary). Для этого мы формируем таблицу, в которой содержатся сведения об идентификаторе подразделения (DepartmentID) и о максимальной зарплате по этому подразделению. Далее мы объединяем две таблицы по условию, в соответствии с которым записи в результирующую таблицу попадают только в том случае, если DepartmentID и Salary есть в ранее сформированной таблице.
SELECT
Department.name AS 'Department',
Employee.name AS 'Employee',
Salary
FROM Employee
INNER JOIN Department ON Employee.DepartmentId = Department.Id
WHERE (DepartmentId , Salary)
IN
( SELECT
DepartmentId, MAX(Salary)
FROM
Employee
GROUP BY DepartmentId
)
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤3🔥2
Как выучить SQL и подтянуть географию?
Census GPT — это инструмент, который позволяет пользователям осуществлять поиск данных о городах, микрорайонах и других географических зонах.
На сайте Census GPT пользователи также могут улучшать существующие карты. Результаты данных вы получаете вместе с SQL-запросом. Соответственно, можно учить SQL и автоматически проверять себя на реальных примерах:
https://censusgpt.com/
@Chatgpturbobot - chatgpt bot
#sql
@sqlhub
Census GPT — это инструмент, который позволяет пользователям осуществлять поиск данных о городах, микрорайонах и других географических зонах.
На сайте Census GPT пользователи также могут улучшать существующие карты. Результаты данных вы получаете вместе с SQL-запросом. Соответственно, можно учить SQL и автоматически проверять себя на реальных примерах:
https://censusgpt.com/
@Chatgpturbobot - chatgpt bot
#sql
@sqlhub
👍17❤4🔥4
SQL_big_cheatsheet.pdf
1.5 MB
Ловите огромный туториал-шпаргалку по SQL с примерами запросов и объяснением
🔥19👍6❤5
8️⃣ Приемов очистки данных в SQL
1. Выявление и удаление дублирующих записей
SELECT DISTINCT column1, column2, ...
FROM table_name;
В качестве альтернативы можно использовать
2. Стандартизация текстовых полей
Вы также можете использовать функцию
3. Обработка отсутствующих или нулевых значений
Затем вы можете удалить эти записи или заменить отсутствующие значения значением по умолчанию. Например:
4. Удаление кривых символов
5. Обработка выбросов
Чтобы определить и удалить выбросов, мы можем использовать функции
6. Корректировка форматов дат
Функция STR_TO_DATE может преобразовать строку в формат даты. Синтаксис функции следующий:
7. Очистка текстовых данных
Функция
8. Проверка типов данных
Важно убедиться, что ваши данные имеют правильный тип данных. Для проверки и преобразования типов данных можно использовать функции
@sqlhub
1. Выявление и удаление дублирующих записей
SELECT DISTINCT column1, column2, ...
FROM table_name;
В качестве альтернативы можно использовать
GROUP BY
, чтобы сгруппировать похожие записи вместе, а затем удалить количество записей в каждой группе.SELECT column_name, COUNT(*)
FROM table_name
GROUP BY column_name
HAVING COUNT(*) > 1;
2. Стандартизация текстовых полей
UPDATE table_name
SET column_name = UPPER(column_name);
Вы также можете использовать функцию
REPLACE
для замены определенных символов или строк в текстовых полях. Например:UPDATE table_name
SET column_name = REPLACE(column_name, 'OldString', 'NewString');
3. Обработка отсутствующих или нулевых значений
SELECT column1, column2, ...
FROM table_name
WHERE column_name IS NULL;
Затем вы можете удалить эти записи или заменить отсутствующие значения значением по умолчанию. Например:
UPDATE table_name
SET column_name = 'DefaultValue'
WHERE column_name IS NULL;
4. Удаление кривых символов
UPDATE table_name
SET column_name = REPLACE(column_name, 'InvalidChar', '');
UPDATE table_name
SET column_name = REGEXP_REPLACE(column_name, '[^a-zA-Z0–9 ]', '');
5. Обработка выбросов
Чтобы определить и удалить выбросов, мы можем использовать функции
AVG
и STDDEV
для расчета среднего и стандартного отклонения столбца.SELECT AVG(column_name), STDDEV(column_name)
FROM table_name;
6. Корректировка форматов дат
Функция STR_TO_DATE может преобразовать строку в формат даты. Синтаксис функции следующий:
SELECT STR_TO_DATE(date_string, format_string)
FROM table_name;
7. Очистка текстовых данных
Функция
REPLACE
может заменить подстроку в строке. Функция TRIM
позволяет удалить из строки ведущие и последующие пробелы. Синтаксис выглядит следующим образом:SELECT UPPER(column_name)
FROM table_name;
SELECT REPLACE(column_name, 'old_string', 'new_string')
FROM table_name;
SELECT TRIM(column_name)
FROM table_name;
8. Проверка типов данных
Важно убедиться, что ваши данные имеют правильный тип данных. Для проверки и преобразования типов данных можно использовать функции
CAST
или CONVERT
. Например:SELECT CAST(column_name AS INT)
FROM table_name;
SELECT CONVERT(column_name, DATE)
FROM table_name;
@sqlhub
👍27❤4🔥4
Руководство для начинающих по MySQL
MySQL — одна из наиболее используемых СУБД, т.к. она поддерживается почти всеми ОС и распространяется как свободное программное обеспечение. Поэтому, MySQL популярна среди разработчиков сайтов и веб-приложений.
Однако без хорошего гайда достаточно трудно разобраться в этапах создания баз данных. В этом руководстве подробно описывается, как установить MySQL, создать БД и таблицы, а также сделать первые запросы:
https://wiki.gentoo.org/wiki/MySQL/Startup_Guide/ru
#субд
MySQL — одна из наиболее используемых СУБД, т.к. она поддерживается почти всеми ОС и распространяется как свободное программное обеспечение. Поэтому, MySQL популярна среди разработчиков сайтов и веб-приложений.
Однако без хорошего гайда достаточно трудно разобраться в этапах создания баз данных. В этом руководстве подробно описывается, как установить MySQL, создать БД и таблицы, а также сделать первые запросы:
https://wiki.gentoo.org/wiki/MySQL/Startup_Guide/ru
#субд
👍15❤2🔥1
БД MySQL (сложные запросы, агрегатные функции, оценка производительности)
В этом уроке мы поговорим о следующих моментах, касающихся работы с БД MySQL: вы узнаете, как составлять сложные запросы, как использовать агрегатные функции, объединения таблиц и как оценивать производительность запросов.
▪ Читать дальше
@sqlhub
В этом уроке мы поговорим о следующих моментах, касающихся работы с БД MySQL: вы узнаете, как составлять сложные запросы, как использовать агрегатные функции, объединения таблиц и как оценивать производительность запросов.
▪ Читать дальше
@sqlhub
👍12❤1🔥1
StatelessSession: что это такое и как использовать
StatelessSession — это командно-ориентированный API для контроля над SQL-запросами в Hibernate. StatelessSession используется для вставки или обновления огромных наборов данных.
В этой статье рассматривается, как внедрить экземпляр и методы StatelessSession в приложение:
https://struchkov.dev/blog/hibernates-statelesssession/
#hibernate
@sqlhub
StatelessSession — это командно-ориентированный API для контроля над SQL-запросами в Hibernate. StatelessSession используется для вставки или обновления огромных наборов данных.
В этой статье рассматривается, как внедрить экземпляр и методы StatelessSession в приложение:
https://struchkov.dev/blog/hibernates-statelesssession/
#hibernate
@sqlhub
👍4❤1🔥1
DuckDB – это встроенная система управления базами данных SQL OLAP.
В этом посте я рассмотрю следующие основные моменты:
- Введение в DuckDB: что это такое, почему вы должны его использовать и когда.
- Интеграция DuckDB в Python.
▪ Читать дальше
▪Github
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤2🔥2😁1
У вас в базе данных есть две таблицы: TABLE1 и TABLE2. Нужно ответить на один простой вопрос: отработает ли данный запрос или упадет с ошибкой? И объяснить, почему.
select id,sum(value) over(partition by i order by y), * from table1
Примечание: все поля существуют в таблице и соответствуют нужному типу данных.
Ответ
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤4🔥2
В SQL используется огромное множество функций. Статья посвящена особенностям их создания и использования. Изучайте материал или освежайте свои знания. Правильное применение алгоритмов их создания и применения поможет стать первоклассным высокооплачиваемым специалистом, востребованным на рынке труда.
В MS SQL разрешено использование как функций, предоставляемых самой системой (встроенных), так и созданных пользователями (пользовательских). Рассмотрим подробнее различные категории вышеперечисленных функций.
Функции встроенные
В SQL встроено огромное множество функций. К ним относятся:
- строковые – для работы со строками;
- числовые – для работы с числами;
- даты – для работы с датами и временем;
- расширенные.
▪ Читать
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤3🔥3
Работа с большими наборами данных – повседневное дело для большинства специалистов по обработке данных. Не было бы никаких проблем, если бы они сразу передавались потоком в базу данных.
Но, зачастую, случается так, что загрузка данных происходит очень долго. В таких случаях программистам приходится занимать себя другими делами, дожидаясь, пока процесс полностью завершится. Такой вариант подходит далеко не всем!
Если вы действительно хотите сократить это время, вам нужен наиболее оптимальный способ загрузки данных в БД.
▪ Читать
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍6🔥3
Дана пустая таблица publisher
Дана пустая таблица publisher с колонками id и name. На id стоит автоинкремент, а Синтаксис name имеет тип varchar(40). Какие из следующих запросов корректно отработают:
1) INSERT INTO publisher (name) VALUES ('OREILLY');
2) INSERT INTO publisher (name) VALUES ('О Reilly');
3) INSERT INTO publisher (name) VALUES ('O'Reilly');
4) INSERT INTO publisher (name) VALUES ('O-Reilly');
Ответ:
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍12🔥4
1. Data Science. Советы по написанию эффективного кода на Python - https://www.youtube.com/watch?v=1Mcy-uatp_c&t=14s
2. Полезные приемы в Pandas - https://www.youtube.com/watch?v=Sd2S5rXe8sY&t=165s
3. Раскройте потенциал Python Numpy: руководство для начинающих в науке о данных - https://www.youtube.com/watch?v=XX2XremQ0fg&t=12s
4. Data science c Python.Ускоряем Pandas в 120 раз- https://www.youtube.com/watch?v=-dAdaEv23vk&t=4s
5. 26 практических приёмов и хитростей Python - https://www.youtube.com/watch?v=vAMyfvtxxdQ&t=5s
6. 5 декораторов Python для Data Science проектов - https://www.youtube.com/watch?v=rxq11WHAlqU
7. ChatGPT + Midjouney на практике - https://www.youtube.com/watch?v=2gUqbc3Ikmo&t=5s
8. Разбор вопросов с собеседований Python - https://www.youtube.com/watch?v=4L1e-A3AOL4&t=5s
9. 15 полезных лайфхаков с кодом Машинного обучения на Python - https://www.youtube.com/watch?v=loOtlwcdiBA&t=4s
10. Декораторы Python, которые выведут ваш код на новый уровень - https://www.youtube.com/watch?v=qxrGAogl4iM
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥5❤2
Вопросы по SQL — одна из ключевых тем собеседования на должность аналитика данных или продукции, а также бизнес-аналитика. Крупные технологические компании, в том числе иностранные, такие как Amazon, Uber и Facebook, особенно тщательно проверяют знания претендента в этой области.
При подготовке к такому собеседованию могут возникнуть трудности с детальной проработкой всех возможных вариантов вопросов по SQL. Чтобы помочь вам справиться с этим, я подготовил краткий гайд на основе собственного опыта — мне довелось побывать как кандидатом на должность, так и работодателем.
Задачи по SQL можно разделить на 4 уровня. В рамках гайда мы рассмотрим каждый из них вместе со стандартными примерами для практики. Если хотите лучше усвоить материал, не переходите сразу же к решению.
▪ Читать
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16❤6🔥3