Data Science. SQL hub
35.8K subscribers
922 photos
50 videos
37 files
981 links
По всем вопросам- @workakkk

@itchannels_telegram - 🔥лучшие ит-каналы

@ai_machinelearning_big_data - Machine learning

@pythonl - Python

@pythonlbooks- python книги📚

@datascienceiot - ml книги📚

РКН: https://vk.cc/cIi9vo
Download Telegram
БД MySQL (сложные запросы, агрегатные функции, оценка производительности)

В этом уроке мы поговорим о следующих моментах, касающихся работы с БД MySQL: вы узнаете, как составлять сложные запросы, как использовать агрегатные функции, объединения таблиц и как оценивать производительность запросов.

Читать дальше

@sqlhub
👍121🔥1
StatelessSession: что это такое и как использовать

StatelessSession — это командно-ориентированный API для контроля над SQL-запросами в Hibernate. StatelessSession используется для вставки или обновления огромных наборов данных.

В этой статье рассматривается, как внедрить экземпляр и методы StatelessSession в приложение:

https://struchkov.dev/blog/hibernates-statelesssession/

#hibernate

@sqlhub
👍41🔥1
🖥 Забудьте о SQLite, используйте вместо этого DuckDB — И поблагодарите меня позже

DuckDB – это встроенная система управления базами данных SQL OLAP.

В этом посте я рассмотрю следующие основные моменты:

- Введение в DuckDB: что это такое, почему вы должны его использовать и когда.
- Интеграция DuckDB в Python.

Читать дальше
Github

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102🔥2😁1
🖥 Задача SQL

У вас в базе данных есть две таблицы: TABLE1 и TABLE2. Нужно ответить на один простой вопрос: отработает ли данный запрос или упадет с ошибкой? И объяснить, почему.

select id,sum(value) over(partition by i order by y), * from table1


Примечание: все поля существуют в таблице и соответствуют нужному типу данных.

Ответ

Да, отработает. Классический пример аналитической функции, внутри которой сначала выполняется группировка (partition by), потом выполняется сортировка (order by) и применяется агрегирующая функция. В данном случае все написано правильно. Этот вопрос проверяет у кандидата знание оконных функций.

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍174🔥2
🖥 Особенности формирования и использования MS SQL функций

В SQL используется огромное множество функций. Статья посвящена особенностям их создания и использования. Изучайте материал или освежайте свои знания. Правильное применение алгоритмов их создания и применения поможет стать первоклассным высокооплачиваемым специалистом, востребованным на рынке труда.

В MS SQL разрешено использование как функций, предоставляемых самой системой (встроенных), так и созданных пользователями (пользовательских). Рассмотрим подробнее различные категории вышеперечисленных функций.

Функции встроенные
В SQL встроено огромное множество функций. К ним относятся:

- строковые – для работы со строками;
- числовые – для работы с числами;
- даты – для работы с датами и временем;
- расширенные.

Читать

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83🔥3
🖥 Python В SQL — Теперь можно загружать данные в 20 раз быстрее

Работа с большими наборами данных – повседневное дело для большинства специалистов по обработке данных. Не было бы никаких проблем, если бы они сразу передавались потоком в базу данных.

Но, зачастую, случается так, что загрузка данных происходит очень долго. В таких случаях программистам приходится занимать себя другими делами, дожидаясь, пока процесс полностью завершится. Такой вариант подходит далеко не всем!

Если вы действительно хотите сократить это время, вам нужен наиболее оптимальный способ загрузки данных в БД.

Читать

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍6🔥3
🖥 Задача SQL

Дана пустая таблица 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');


Ответ:

1, 2, 4

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍12🔥4
🖥 Полезные приемы с кодом для аналитиков данных на Python

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🔥52
🖥 Руководство по подготовке к собеседованию по SQL

Вопросы по SQL — одна из ключевых тем собеседования на должность аналитика данных или продукции, а также бизнес-аналитика. Крупные технологические компании, в том числе иностранные, такие как Amazon, Uber и Facebook, особенно тщательно проверяют знания претендента в этой области.

При подготовке к такому собеседованию могут возникнуть трудности с детальной проработкой всех возможных вариантов вопросов по SQL. Чтобы помочь вам справиться с этим, я подготовил краткий гайд на основе собственного опыта — мне довелось побывать как кандидатом на должность, так и работодателем.

Задачи по SQL можно разделить на 4 уровня. В рамках гайда мы рассмотрим каждый из них вместе со стандартными примерами для практики. Если хотите лучше усвоить материал, не переходите сразу же к решению.

Читать

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍166🔥3
🖥 SQL: план изучения

Дорожная карта по SQL, которая поможет изучить основные концепции SQL, команды, а также как с ними работать. Если следовать плану, то изучить данный язык можно за 2 месяца:

Читать

#sql

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍193🔥2
🖥 SQL для начинающих: 10 правил построения «точных» запросов

«Точный» SQL-запрос возвращает «чистые» данные в необходимом и достаточном количестве, при этом потребляет как можно меньше памяти и справляется за минимальное время. Скорость работы с базой влияет на производительность. Потребление памяти может негативно сказаться даже на безопасности. Всё это прямо и косвенно влияет на прибыль компании. В статье разберёмся, как не допускать ошибок.

Для наших целей понадобятся тестовые данные. Будем работать с базой данных Oracle Database. Примеры в статье будут приводиться на языке SQL, PL/SQL. Нам важен подход, который можно адаптировать под другую реляционную систему управления базами данных — РСУБД.

Часть 1
Часть 2

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍175🔥2
Какой из следующих SQL запросов вернет все записи, отсортированные по колонке name в порядке возрастания из которых будут исключены записи, содержащие NULL в колонке description?
Anonymous Quiz
71%
SELECT * FROM table_name WHERE description IS NOT NULL ORDER BY name ASC;
13%
SELECT * FROM table_name WHERE description NOT NULL ORDER BY name ASC;
9%
SELECT * FROM table_name WHERE description <> NULL ORDER BY name ASC;
6%
SELECT * FROM table_name WHERE NOT (description IS NULL) ORDER BY name ASC;
👍20🔥65🤔1
🖥 Как расширенные объединения и оконные функции могут вывести ваши SQL-запросы на новый уровень

В этой статье мы рассмотрим четыре распространённых типа соединений, а также различные типы доступных оконных функций.

К концу этой статьи вы будете обладать знаниями, необходимыми для того, чтобы вывести ваши SQL-запросы на новый уровень и раскрыть истинную мощь ваших данных.

Читать

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍204🔥1
🖥 NoSQLMap — Автоматизированный инструмент для баз данных NoSQL, предназначенный для аудита, а также для автоматизации атак путем внедрения и использования слабых сторон конфигурации по умолчанию в базах данных NoSQL и веб-приложениях, использующих NoSQL, для раскрытия или клонирования данных из базы данных.

⚠️ Информация предоставлена исключительно с целью ознакомления. И побуждает обратить внимание на проблемы в безопасности.

🖥 GitHub

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93🔥3
Работа_с_PostgreSQL_в_Python.pdf
804.4 KB
🖥 Работа с PostgreSQL в Python на русском

Подключение к БД
Создание таблиц
Вставка и извлечение данных
Обновление таблиц
Удаление строк

#doc #python #postgresql #russian

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍214🥰1🤔1
🖥 13 упражнений по SQL с решениями

В этом наборе упражнений мы поработаем с SQL и T-SQL. С помощью этих упражнений мы будем создавать различные запросы SQL и T-SQL, чтобы отточить навыки работы с запросами.

Независимо от того, являетесь ли вы новичком или опытным разработчиком, эти упражнения помогут укрепить знания и подготовиться к реальным собеседованиям. Так что давайте погрузимся в работу и начнём решать задачи!

Читать

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥53
Какой из следующих SQL запросов вернет топ-5 самых просматриваемых постов из таблицы posts, отсортированных по количеству просмотров в порядке убывания?
Anonymous Quiz
61%
SELECT * FROM posts ORDER BY views DESC LIMIT 5;
21%
SELECT TOP 5 * FROM posts ORDER BY views DESC;
8%
SELECT * FROM posts WHERE ROWNUM <= 5 ORDER BY views DESC;
10%
SELECT * FROM posts WHERE views >= 5 ORDER BY views DESC LIMIT 5;
17👍9🔥4👎1👏1
🖥 Выбор максимума из одного поля и значения другого поля по максимуму третьего поля

Дана таблица - table, с тремя полями field1, field2, field3.
Задача получить в одном запросе два значения:

Максимум поля field1
Значение поля field2 в записи, где поле field3 максимально.
Значения поля field3 уникальны, так что оба ответа однозначны.

Решить эти две задачи двумя запросами не проблема.

1) SELECT MAX(field1) FROM table;
2)SELECT field2 FROM table
ORDER BY field3 DESC
LIMIT 1;


или используем для второй задачи вариант с WHERE:

SELECT field2 FROM table
WHERE field3 = (SELECT MAX(field3) FROM table);


Как получить оба в одном запросе

Есть два хорошо оптимизированных запроса (при условии что соответствующие индексы в наличии). У которых между собой ничего общего, кроме таблицы-источника, нет. Причём каждый запрос возвращает строго одну запись. В таких условиях решение по объединению очевидно. CROSS JOIN.

SELECT *
FROM (
SELECT MAX(field1) field1
FROM table
) t1
CROSS JOIN (
SELECT field2
FROM table
ORDER BY field3 DESC LIMIT 1
) t2
;


Второй вариант

select
(select max(a) from tbl) as a,
b,
c
from tbl
order by c desc
limit 1


Решение с CROSS JOIN работает на 10% быстрее.

👉 Пишите ваше решение в комментариях👇

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥72
С помощью какого из следующих запросов можно выбрать все записи из таблицы Persons, где значение поля FirstName равно Peter и значение поля LastName равно Jackson?
Anonymous Quiz
5%
SELECT FirstName='Peter', LastName='Jackson' FROM Persons
3%
SELECT * FROM Persons WHERE FirstName<>'Peter' AND LastName<>'Jackson'
92%
SELECT * FROM Persons WHERE FirstName='Peter' AND LastName='Jackson'
👍10👎2🔥2👏21
🖥 Задача SQL

Есть кинотеатр, в нем идут фильмы. У фильма есть название, длительность (пусть для простоты будет 60, 90 или 120 минут), цена билета (в разное время и дни может быть разная), время начала сеанса (один фильм может быть показан несколько раз в разное время за разную цену). Также, есть информация о купленных билетах (номер билета, на какой сеанс).

Задания:

составь грамотную нормализованную схему хранения этих данных в БД. Внеси в нее 4-5 фильмов, расписание на один день и несколько проданных билетов.

Напишите запросы, считающие и выводящие в понятном виде:

ошибки в расписании (фильмы накладываются друг на друга), отсортированные по возрастанию времени.
Выводить необходимо колонки «фильм 1», «время начала», «длительность», «фильм 2», «время начала», «длительность».

перерывы больше или равные 30 минут между фильмами, выводятся по уменьшению длительности перерыва. Выводить надо колонки «фильм 1», «время начала», «длительность», «время начала второго фильма», «длительность перерыва».

список фильмов, для каждого указано общее число посетителей за все время, среднее число зрителей за сеанс и общая сумма сбора по каждому, отсортированные по убыванию прибыли. Внизу таблицы должна быть строчка «итого», содержащая данные по всем фильмам сразу.

число посетителей и кассовые сборы, сгруппированные по времени начала фильма: с 9 до 15, с 15 до 18, с 18 до 21, с 21 до 00:00. (то есть сколько посетителей пришло с 9 до 15 часов, сколько с 15 до 18 и т.д.).

@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥156👍5