SQL и БД Learning – Telegram
SQL и БД Learning
10K subscribers
801 photos
9 videos
22 files
445 links
№ 5060218708

Изучаем SQL с нуля

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/SQl_and_DB_Learning
Download Telegram
fselect — поиск файлов при помощи SQL-like запросов

brew install fselect

Хотя fselect не стремится полностью заменить традиционные find и ls, у fselect есть несколько приятных особенностей:
— SQL-подобная грамматика, легко понятная человеку
— возможность составлять сложные запросы
агрегатные, статистические, даточные и другие функции
поиск в архивах
— поддержка .gitignore, .hgignore и .dockerignore
— поиск по ширине и высоте изображений, метаданным EXIF
— поиск по информации о MP3
— поиск по расширенным атрибутам файлов
— поиск по хэшам файлов
— поиск по типу MIME
— имеет интерактивный режим
— различные форматы вывода (CSV, JSON и другие)

Любители SQL оценят)
🖥 GitHub
🟡 Примеры запросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Sweet-Viz - библиотека, которая предоставляет быструю визуализацию и анализ данных.

Основная фича Sweet-Viz — обширный HTML-дашборд с полезными представлениями и сводками данных, который генерируется выполнением всего одной строки кода.

pip install sweetviz

import sweetviz as sv

my_report = sv.analyze(my_dataframe)
my_report.show_html() # Default arguments will generate to "SWEETVIZ_REPORT.html"

Github
👍9
Одинарные кавычки для строк

Да-да, какой-нибудь BigQuery разрешает двойные/тройные кавычки для строк, но для других SQL-диалектов “строки” — это идентификаторы, а ”’строки”’ интерпретируются ещё по-другому.

Поэтому лучше строки всегда писать в одинарных кавычках, ради всеобщего блага.

Во-втором случае некоторые диалекты могут начать жаловаться наподобие column "%@domain.com" does not exist.
👍64🎄2
💻 TimescaleDB — база данных временных рядов

TimescaleDB — это open-source БД, разработанная для того, чтобы сделать SQL масштабируемым для данных временных рядов.
TimescaleDB разработана на основе PostgreSQL и упакована как расширение PostgreSQL, обеспечивая автоматическое разделение по времени и пространству (ключ разделения), а также полную поддержку SQL.

🖥 GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍3🎄3
PostgREST — REST API для любой Postgres БД

PostgREST обеспечивает полностью RESTful API из любой существующей базы данных PostgreSQL.
Он предоставляет более чистый, соответствующий стандартам и быстрый API, чем тот, который вы можете написать с нуля.

🖥 GitHub
🟡 Доки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42
Какие условия следует использовать, чтобы получить из таблицы все записи, в которых значение в колонке last_name начинается со строки 'SM'?
Anonymous Quiz
2%
WHERE last_name[1 TO 2] = 'SM'
88%
WHERE last_name LIKE 'SM%'
1%
WHERE last_name EQUATES TO 'SM'
3%
WHERE last_name IS 'SM*'
2%
WHERE last_name = 'SM'
2%
Узнать ответ
👍125
#Вопросы_с_собеседования
Допустим, у вас есть таблица events с полями user_id, event_type, и timestamp. Как вы можете написать запрос, чтобы получить user_id всех пользователей, которые совершили событие login после события signup?

WHERE Условие: Фильтрует пары событий, где первое событие (e1) — это login, а второе (e2) — signup. Кроме того, проверяется, что timestamp для login (e1.timestamp) должен быть больше, чем timestamp для signup (e2.timestamp), что означает, что login произошел после signup.
5👍5🔥2
Какой оператор необходим для соединения таблиц и вывода результирующей таблицы, в которой данные полностью пересекаются по условию, указанному после ON, и дополняются записями из второй по порядку (правой) таблицы, даже если они не соответствуют условию.
Anonymous Quiz
54%
RIGHT JOIN
18%
INNER JOIN
23%
FULL JOIN
4%
Посмотреть ответ
👍75
Сколько байт занимает самое большое целое число в PostgreSQL?
Anonymous Quiz
5%
2
7%
4
4%
6
55%
8
13%
Все варианты неверные
16%
Узнать ответ
3👍3
Привет, на связи админ! Напишите в комментариях список тем, которые вы бы хотели, чтобы мы рассмотрели в наших постах
👍53😱3🎄3
Не забывайте обновлять Postgres!

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

Кроме того, с postgresql_cluster этот процесс полностью автоматизирован

Github
3👍3
💻EventStoreDB — open-source БД, в основе которой событийно-ориентированный подход

Благодаря событийно-ориентированному подходу EventStoreDB позволяет извлекать больше пользы из данных, видеть больше связей и закономерностей
EventStoreDB позволяет создавать кластеры в AWS, Azure и GCP и безопасно подключать их к собственным облачным ресурсам.

Быстрый старт с Docker:
docker run --name esdb-single-node -it -p 2113:2113 -p 1113:1113 eventstore/eventstore:latest --insecure --run-projections=All --enable-atom-pub-over-http

🖥 GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2😱2
В реляционных базах данных данные хранятся в таблицах, которые являются
Anonymous Quiz
22%
одномерными
50%
двумерными
2%
трехмерными
26%
любыми из перечисленных выше
👍11
Sqlelf

Инструмент, использующий функциональность виртуальной таблиц Sqlite, позволяющий исследовать объекты Linux ELF с помощью SQL.

ELF (англ. Executable and Linking Format — это формат исполнимых и компонуемых файлов) — формат исполняемых двоичных файлов, используемый во многих современных UNIX-подобных операционных системах, таких как FreeBSD, Linux, Solaris и др.

Традиционно изучение файлов ELF ограничивалось такими инструментами, как objdump или readelf. Несмотря на то, что эти инструменты обладают широкими возможностями синтаксического анализа, формат вывода и возможность задавать исследовательские функции инструментов довольно ограничены.

Github
👍4
Count (1) вместо count (*)

При любой возможности выбирайте count(1) вместо count(*). Оператор count(*) принимает в расчет все столбцы таблицы для выполнения вычислений, тогда как count(1) учитывает только первый столбец.

Обратите внимание, что результат остается неизменным, будь то count (*) или count (1).

При использовании count(1) движок базы данных задействует меньше ресурсов и работает быстрее. В случае небольших таблиц эта разница будет незаметна, но если дело касается больших из них, то данный фактор существенно отразится на производительности запросов.
👍3210😱5
💻Antares SQL — удобный и простой open-source SQL-клиент

sudo apt install antares

Antares SQL — это современное приложение, созданное с упором на простоту и UX, про производительность тоже не забыли

🟡 GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1
SQL Server: GETUTCDATE

GETUTCDATE
- это функция даты и времени в SQL Server, которая возвращает текущую дату и время в формате UTC. UTC - это стандартный формат времени, используемый для избежания расхождений часовых поясов и обеспечения согласованности в разных часовых поясах. В отличие от функции GETDATE, которая возвращает текущую локальную дату и время, GETUTCDATE всегда возвращает текущую дату и время в формате UTC.

Как работает GETUTCDATE?

GETUTCDATE
- это недетерминированная функция, что означает, что она возвращает разное значение каждый раз при вызове, даже в рамках одного оператора. Она извлекает текущую дату и время из операционной системы сервера, на котором работает SQL Server, а затем преобразует его в формат UTC. Результатом является значение datetime с точностью 3,33 миллисекунды.
👍42🎄1
👍167