10287
№ 5060218708 Изучаем SQL с нуля По всем вопросам @mascarov_valentin Реклама на бирже - https://telega.in/c/SQl_and_DB_Learning
Задача
При выборке из таблицы workers прибавьте к дате 4 дня, 3 часа, 2 минуты, 1 секунду.
Ответ на картинке.
Функция FIND_IN_SET()
Функция FIND_IN_SET() возвращает положение строки в списке строк.
Подробнее ознакомиться с функцией можно здесь.
#Вопросы_с_собеседования
Какие параметры используются в конструкции order by?
ASC и DESC
Генерация случайных чисел в MySQL
Для генерации случайных чисел или сортировки строк в случайном порядке можно использовать стандартную функцию NEWID().
#вопросы_с_собеседований
При выборке из таблицы workers получите первые 5 символов логина и добавьте троеточие
Ответ на картинке.
🗞 EasyOffer 2.0 собрал более 1 млн рублей за первые сутки краудфандинга
Платформа EasyOffer, предназначенная для подготовки к IT-собеседованиям, объявила о разработке новой версии сервиса. За первые 24 часа краудфандинга проекту удалось привлечь более 1 000 000 рублей.
В релизе EasyOffer 2.0 планируется:
— крупнейшая база реальных вопросов и задач с технических интервью
— тренажёры по интервальным повторениям и симуляторы собеседований
— аналитика по компаниям, грейдам, популярности и сложности вопросов
— тестовые задания и требования из вакансий
📆 Релиз запланирован на конец мая.
Сейчас в рамках сбора средств можно оформить годовой PRO-доступ за 3 200 ₽. После запуска такая сумма будет соответствовать цене месячной подписки.
Последние дни регистрации на IT_ONE Cup. ML Challenge.
Создай AI-ассистента, который будет помогать в работе дизайнерам, системным и бизнес-аналитикам. Победители разделят призовой фонд в 1 500 000 рублей. Все участники смогут выиграть крутой мерч и приглашение в магистратуру ИТМО.
Регистрация открыта до 13 апреля включительно
Почему это для тебя:
🔸 Достаточно создать Proof of concept сервиса, а не полноценный MVP.
🔸 Применишь свои знания в машинном обучении, обработке естественного языка и компьютерном зрении на практике.
🔸 Узнаешь самые действенные подходы к решению задач от экспертов.
🔸 Хватит базовых навыков в ML и желания экспериментировать – задачи не требуют обучения моделей с нуля.
На IT_ONE Cup. ML Challenge ты:
🔸 Поработаешь с современными технологиями: LLM, NLP, RAG, MCP.
🔸 Создашь AI-инструмент, который упростит работу других специалистов.
🔸 Сможешь попасть в магистратуру ИТМО на факультет Программной инженерии и компьютерной техники. Число приглашений не ограничено – шанс будет у каждого.
Треки соревнования:
1. Динамические контекстные подсказки для системного аналитика.
2. AI-генератор дизайн-макетов по описанию требований.
3. Система визуализации BPMN-диаграмм.
Регистрируйся до 13 апреля включительно: https://cnrlink.com/itonecupmlsqlbdlearning
Реклама. ООО "ГПБ-ИТ1". ИНН 9717102235. erid: 2W5zFGZ9L8Y
Отличия MySQL от PostgreSQL. Выбираем что лучше, PostgreSQL или MySQL
В данной статье мы сравним PostgreSQL и MySQL по различным параметрам и запишем их в сравнительную таблицу.
Перейти к статье
Ранжирующая функция NTILE()
Функция NTILE() является частью языка SQL и используется для разделения результата запроса на определенное количество групп или сегментов. Эта функция принимает один аргумент - количество сегментов на которые нужно разделить результат.
Разница между функциями CHARINDEX и SUBSTR
1. Функция CHARINDEX используется для поиска подстроки в строке и возвращает позицию первого вхождения этой подстроки. Синтаксис функции выглядит следующим образом:
CHARINDEX('подстрока', 'строка') - где 'подстрока' - искомая подстрока, а 'строка' - строка, в которой происходит поиск.
2. Функция SUBSTR используется для извлечения подстроки из строки. Синтаксис функции выглядит следующим образом:
SUBSTR('строка', начальная_позиция, длина) - где 'строка' - строка, из которой извлекается подстрока, начальная_позиция - позиция, с которой начинается извлечение подстроки (отсчет начинается с 1), а длина - количество символов, которые нужно извлечь.
fselect — поиск файлов при помощи SQL-like запросов
— brew install fselect
Хотя fselect не стремится полностью заменить традиционные find и ls, у fselect есть несколько приятных особенностей:
— SQL-подобная грамматика, легко понятная человеку
— возможность составлять сложные запросы
агрегатные, статистические, даточные и другие функции
поиск в архивах
— поддержка .gitignore, .hgignore и .dockerignore
— поиск по ширине и высоте изображений, метаданным EXIF
— поиск по информации о MP3
— поиск по расширенным атрибутам файлов
— поиск по хэшам файлов
— поиск по типу MIME
— имеет интерактивный режим
— различные форматы вывода (CSV, JSON и другие)
Любители SQL оценят)
🖥 GitHub
🟡 Примеры запросов
Ваши SQL-запросы работают медленно, а базы данных грузятся дольше, чем хотелось бы? Исправим это на нашем бесплатном уроке 31 марта в 20:00 мск: https://otus.pw/38hM/
Индексы — один из ключевых инструментов ускорения работы с БД. Но как выбрать нужный тип, правильно его создать и избежать ошибок?
После занятия вы сможете уверенно работать с индексами в PostgreSQL и MS SQL Server, оптимизировать запросы и делать базы данных быстрее.
Регистрируйтесь прямо сейчас и получите скидку на большое обучение «SQL для разработчиков и аналитиков»: https://otus.pw/38hM/
erid: 2W5zFHQJ1ua
#Вопросы_с_собеседования
❓Вывести 30 комментариев начиная с 5 комментария из таблицы replies, кроме комментариев автора 'Вася'. Данные сортируются по дате добавления комментария в убывающем порядке
Ответ на картинке.
#Вопросы_с_собеседования
❓При выборке из таблицы workers создайте новое поле res, в котором будет строка 'eee'.
Ответ на картинке.
#Вопросы_с_собеседования
Какие ещё ограничения вы знаете, как они работают и указываются?
SQL-ограничения (constraints) указываются при создании или изменении таблицы. Это правила для ограничения типа данных, которые могут храниться в таблице. Действие с данными не будет выполнено, если нарушаются установленные ограничения.
• UNIQUE — гарантирует уникальность значений в столбце;
• NOT NULL — значение не может быть NULL;
• INDEX — создаёт индексы в таблице для быстрого поиска/запросов;
• CHECK — значения столбца должны соответствовать заданным условиям;
• DEFAULT — предоставляет столбцу значения по умолчанию.
#Вопросы_с_собеседования
❓Как GROUP BY обрабатывает значение NULL?
Ответ:
При использовании GROUP BY все значения NULL считаются равными.
Столкнулись с падением производительности базы данных?
Не делайте резких движений: вы можете ухудшить ситуацию.
Сначала нужно верно диагностировать причину проблемы.
Возможно вы неправильно выбрали индексы, а быть может дело вообще в самой архитектуре БД – вариантов масса!
На открытом вебинаре «Как ускорить работу и повысить надёжность PostgreSQL»
вы узнаете:
🎯как обеспечить высокую производительность и отказоустойчивость базы данных
🎯как вовремя выявить деградацию производительности с помощью диагностики
Вебинар проведёт Дмитрий Золотов, Kotlin-разработчик в «Яндексе».
Приглашаем технических руководителей, админов БД, девопсов и разработчиков.
Все участники получат в подарок видеоурок «Безопасность в PostgreSQL: защита данных, управление доступом и аудит» и скидку 7% на любой курс OTUS.
6 мая, 19:00 МСК
Бесплатно
Записаться - https://otus.pw/llV1/
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFG4V2Nk
#вопросы_с_собеседований
Вывести 30 комментариев начиная с 5 комментария из таблицы replies, кроме комментариев автора 'Вася'. Данные сортируются по дате добавления комментария в убывающем порядке
Ответ на картинке.
Тратите много времени на повторяющиеся SQL-запросы, выполняя рутинные задачи вручную?
На бесплатном вебинаре, который пройдет 22 апреля в 20:00, мы решим эту проблему и научим вас создавать и использовать хранимые процедуры для автоматизации процессов в SQL! https://otus.pw/sYDb/
Представьте, что вы можете автоматизировать эти задачи с помощью хранимых процедур в MS SQL Server и PostgreSQL, увеличив свою эфффективность. Больше не придется тратить на это лишние силы.
Записывайтесь на урок, получайте практические навыки, а также скидку на большое обучение «SQL для разработчиков и аналитиков»: https://otus.pw/sYDb/
erid: 2W5zFGp9d2g
⚡️ Python теперь в Telegram!
Ребята сделали крутейший канал, где на простых картинках и понятном языке обучают Python, делятся полезными фишками и инструментами
Подписывайтесь: @PythonPortal
PostgreSQL 17: архитектура и тюнинг SQL-запросов
Погрузись в архитектуру и прокачай оптимизацию запросов одной из самых популярных open source СУБД – PostgreSQL.
🌐 В программе курса:
🤩 Разберем, как работают СУБД вообще и PostgreSQL в частности: что такое MVCC, ACID, WAL, LRU, PPC/TPC и другие фундаментальные понятия архитектуры баз данных
🤩 Получите свой собственный выделенный облачный PostgreSQL-сервер (8 vCPU, 12G RAM, 100G NVMe) – БЕСПЛАТНО на время обучения предоставляется
🤩 Получите теорию и практику EXPLAIN и EXPLAIN ANALYZE на разных типа запросов
🤩 Изучите архитектуру хранения данных в PostgreSQL, типы и особенности индексов, а также получите полезные советы и трюки оптимизации БД
🗓 Старт курса: 24 апреля. Продолжительность: 5 недель обучения (четверг, 18:00 МСК).
Изучить программу и записаться можно здесь.
🤩Кто мы: R&D-центр Devhands, основатель школы Алексей Рыбак.
Автор курса — Николай Ихалайнен, эксперт по СУБД (ex-Percona), со-основатель MyDB, энтузиаст открытого ПО.
Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzquiQ76e
Мои коллеги из Яндекса создали сильнейшие IT каналы 🔥
Наше кредо — программирование не сложно, просто никто не объяснял нормально.
JSON_VALUE в Microsoft SQL Server
JSON_VALUE - это функция в Microsoft SQL Server, которая извлекает значение из JSON-объекта по заданному пути.
Синтаксис функции JSON_VALUE выглядит следующим образом: JSON_VALUE (expression, path)
-expression - это JSON-объект, из которого нужно извлечь значение.
- path - это путь к значению внутри JSON-объекта.
Функция JSON_VALUE также может использоваться в фильтрах WHERE.
Аналитика небольших данных: как совместить Excel, Python и SQL с помощью инструментов с открытым исходным кодом
Смотреть статью
Функция SYSDATE()
Функция SYSDATE() возвращает текущую дату и время.
Дата и время возвращаются как (строка) "YYYY-MM-DD HH:MM:SS" или как (числовые) YYYYMMDDHHMMSS.
Задача
Даны 3 таблицы: таблица category с полями id и name, таблица sub_category с полями id и name и таблица page с полями id, name и sub_category_id. Достаньте одним запросом все страницы вместе с их подкатегориями и категориями.SELECT * FROM page LEFT JOIN category ON page.catogory_id = category.id
LEFT JOIN sub_category ON category.id = sub_category.category_id
В чем разница между функциями RANK() и DENSE_RANK()?
Единственная разница между функциями RANK() и DENSE_RANK() заключается в случаях, когда несколько значений в наборе имеют одинаковый ранг.
В таких случаях RANK() будет назначать непоследовательные «ранги» значениям в наборе.
Тогда как DENSE_RANK() будет назначать последовательные ранги значениям в наборе.
Например, рассмотрим набор
{25, 25, 50, 75, 75, 100}.
Для такого набора RANK() вернет
{1, 1, 3, 4, 4, 6} (обратите внимание, что значения 2 и 5 пропущены), тогда как DENSE_RANK() вернет
{1, 1, 2, 3, 3, 4}.
Вам нравится читать контент на этом канале?
Возможно, вы задумывались о том, чтобы купить на нем интеграцию?
Следуйте 3 простым шагам, чтобы сделать это:
1) Нажмите на ссылку: Вход
2) Пополняйтесь удобным способом
3) Размещайте публикацию
Если тематика вашего поста подойдет нашему каналу, мы с удовольствием опубликуем его.
Задача повышенной сложности
В базе данных есть таблица "orders" с полями "id" (уникальный идентификатор заказа), "customer_id" (уникальный идентификатор клиента, который сделал заказ), "total_price" (общая стоимость заказа) и "created_at" (дата создания заказа). Необходимо найти все заказы, сделанные клиентом, сумма которых превышает среднюю сумму заказов всех клиентов. Результат должен быть отсортирован по дате создания заказа в порядке убывания.
Решение:
SELECT orders.id, orders.total_price, orders.created_at
FROM orders
WHERE orders.customer_id IN (
SELECT customer_id
FROM orders
GROUP BY customer_id
HAVING AVG(total_price) < (
SELECT AVG(total_price)
FROM orders
)
)
ORDER BY orders.created_at DESC;