SQL и БД Learning
Ir al canal en Telegram
№ 5060218708 Изучаем SQL с нуля По всем вопросам @mascarov_valentin Реклама на бирже - https://telega.in/c/SQl_and_DB_Learning
Mostrar más9 717
Suscriptores
+124 horas
-177 días
-4830 días
Archivo de publicaciones
9 717
#Вопросы_с_собеседования
❓Получите SQL запросом все возрасты без дублирования
Ответ картинке.
9 717
SQL открывает доступ к миру данных
Это один из основных навыков для аналитиков и дополнительный скилл для всех, кто работает с большими данными: маркетологов, менеджеров или финансистов. С помощью SQL вы сможете создавать, редактировать, обновлять базы данных и выгружать информацию для дальнейшего анализа.
Чтобы изучить основы SQL — приходите на бесплатный курс Нетологии «Введение в SQL и работу с базой данных». Программа ориентирована на практику: на примере реальной задачи аналитика вы научитесь подключаться к базам данных, познакомитесь с запросами и функциями, узнаете, как превращать массив данных в простые отчёты и проводить сравнительный анализ.
Курс рассчитан на 5 занятий и подойдёт даже тем, кто никогда прежде не встречался с SQL. Все лекции доступны сразу после регистрации — вы сможете смотреть их в любое удобное время.
Зарегистрироваться → https://netolo.gy/bMA6
Реклама. ООО «Нетология» LatgC5Es1
9 717
🖥 Задача
Каким образом можно сократить количество взятых строк из таблицы Jobs, чтобы при выборе значений брались все значения из первой таблицы и только 10 значений из второй?
Решения
Вариант 1:
select *
from hr.job_history jh
left join (
select *
from hr.jobs jb
order by job_id
fetch first 10 rows only) jb on jb.job_id = jh.job_id
Вариант 2:
SELECT *
FROM HR.JOB_HISTORY JH
LEFT JOIN ( SELECT *,
ROW_NUMBER() OVER (PARTITION BY JB.job_id
ORDER BY JB.id -- обязательна уникальная сортировка
) rownum
FROM HR.JOBS JB ) JBS
ON JH.job_id = JBS.job_id
WHERE JBS.rownum < 10;
👉 Пишите свое решение в комментариях👇
@sqlhub9 717
Новый конкурс TVM Challenge для разработчиков смарт-контрактов с призовым фондом в 30 000 Toncoin!
Приглашаем разработчиков присоединяться к новому соревнованию TVM Challenge, чтобы продемонстрировать свои навыки и изучить новые варианты использования опкодов, которые будут представлены в предстоящем обновлении TVM.
Проекты будут оцениваться по нескольким критерям: актуальность, эффективность, уникальность идеи и техническая сложность. Подробнее — в блоге TON.
Конкурс продлится 3 недели, со 2-го по 25-е июня 2023 года.
Прием заявок откроется 18 июня в @toncontests_bot. Все необходимые инструменты вы сможете найти в этом посте или на странице конкурса в TON Blog.
Желаем удачи всем участникам!
9 717
Какое ключевое слово нельзя использовать вместе с оператором ROLLUP?
9 717
#Вопросы_с_собеседования
❓Удалите из таблицы table1 поле age
Ответ на картинке.
9 717
Лаборатория Apache Spark Advanced – хардкор-программа для middle и senior дата-инженеров от Newprolab
➞ летний поток c 3 по 31 июля онлайн
➞ 8 занятий по 3 часа с преподавателем в зуме
➞ 4 лабы, объединенные в один проект
➞ облачный кластер для выполнения лаб
➞ автоматическая проверка лаб чекерами
➞ малая группа и помощь эксперта
➞ преподаватель: Сергей Гришаев, Architect, Сбермаркет
Вы разработаете коннектор к гибридному хранилищу и разберетесь раз и навсегда, что скрыто в Spark "под капотом" и как ускорить обработку данных в своих проектах
До конца июня действует специальный промокод friends10, который дает еще 10% скидки от цены, указанной на сайте
Узнать подробности и стать участником ➞
9 717
#Вопросы_с_собеседования
❓Объясните различные типы нормализации
Существует много последовательных уровней нормализации. Это так называемые нормальные формы. Каждая последующая нормальная форма включает предыдущую. Первых трех нормальных форм обычно достаточно.
• Первая нормальная форма (1NF) — нет повторяющихся групп в строках
• Вторая нормальная форма (2NF) — каждое неключевое (поддерживающее) значение столбца зависит от всего первичного ключа
• Третья нормальная форма (3NF) — каждое неключевое значение зависит только от первичного ключа и не имеет зависимости от другого неключевого значения столбца
9 717
Узнаем вместимость БД
Этот запрос определяет размер базы данных в мегабайтах путем вычисления суммарного количества страниц, выделенных для базы данных и вычисления размера в мегабайтах. Результат будет показан в столбце MB.
9 717
🖥 Как откатить часть транзакции внутри функции или процедуры?
На SQL вы можете сделать так:
BEGIN;
INSERT INTO table1 VALUES (1);
SAVEPOINT my_savepoint;
INSERT INTO table1 VALUES (2);
ROLLBACK TO SAVEPOINT my_savepoint; --rollback previous command
INSERT INTO table1 VALUES (3);
COMMIT;
Внутри функции или процедуры код выше завершится с ошибкой, например в is_sql.sql. Но вы можете откатить часть SQL команд в транзакции через подтранзакции:
DO $TEST$
BEGIN
-- here you can write DDL commands, for example, adding or deleting a table or its section
-- and/or
-- here you can write DML commands that modify data in tables and, thus, check the operation of triggers
-- rollback all test queries
raise exception using errcode = 'query_canceled';
EXCEPTION WHEN query_canceled THEN
--don't do anything
END
$TEST$;
@sqlhub9 717
Ты еще не используешь нейросети, чтобы зарабатывать онлайн?
Срочно исправь это, потому что нейросети быстро развивающееся направление, где много возможностей и денег! 😉
27 июня в 18:00 приглашаем тебя на онлайн-интенсив от GeekBrains, где ты узнаешь, какие нейросети сейчас популярны, как с ними работать и какие из них ты уже можешь использовать для заработка.
Регистрируйся сейчас, пока это можно сделать бесплатно и забирай бонусы:
- Грант на 10 000 рублей для всех участников на обучение в GeekBrains
- Главная книга GeekBrains «Путь в ИТ», в которой собраны все для старта и развития в сфере ИТ для новичков и опытных.
- Гайд «7 навыков высокоэффективных айтишников».
- Подборка бесплатных «нейронок» для создания видео
Ждем тебя на онлайн-интенсиве 👈🏼
Реклама ООО "ГикБреинс"
erid: LjN8Jwd9H
9 717
#Вопросы_с_собеседования
❓Выберите из таблицы workers все записи так, чтобы вместо id было userId, вместо login – userLogin, вместо salary - userSalary
Ответ на картинке.
9 717
Где набраться опыта в аналитике данных, структурировать знания и узнать, как с рабочими задачами справляются профессионалы?
Получите опыт, сопоставимый с работой в крупной компании — пройдите 5 недель интенсивной практики
на «Симуляторе аналитика». Здесь вы с нуля выстроите аналитические процессы, поработаете с настоящей инфраструктурой, научитесь уверенно справляться с ежедневными задачами аналитика и поймёте, какая логика стоит за каждым решением.
Наставники курса:
▪️Анатолий Карпов (работал ведущим аналитиком VK и JetBrains)
▪️Мария Сомова (senior аналитик VK)
▪️Ян Пиле (руководитель группы аналитики поиска VK)
Они точно знают, как эффективно решать рабочие задачи, и готовы поделиться опытом с вами.
Новый поток стартует уже сегодня! Успейте записаться!
9 717
🖥 Вопросы собеседований
Удержание пользователей в месяц
Контекст: допустим, у нас есть статистика по авторизации пользователей на сайте в таблице logins:
| user_id | date |
|---------|------------|
| 1 | 2018-07-01 |
| 234 | 2018-07-02 |
| 3 | 2018-07-02 |
| 1 | 2018-07-02 |
| ... | ... |
| 234 | 2018-10-04 |
Задача: написать запрос, который получает количество удержанных пользователей в месяц. В нашем случае данный параметр определяется как количество пользователей, которые авторизовались в системе и в этом, и в предыдущем месяце.
Решение:
SELECT
DATE_TRUNC('month', a.date) month_timestamp,
COUNT(DISTINCT a.user_id) retained_users
FROM
logins a
JOIN
logins b ON a.user_id = b.user_id
AND DATE_TRUNC('month', a.date) = DATE_TRUNC('month', b.date) +
interval '1 month'
GROUP BY
date_trunc('month', a.date)
@sqlhub9 717
Что вернет запрос "select 1 from USERS" (если таблица USERS существует)?
9 717
Организация хранения исторических данных в Oracle
Сегодня поговорим о разных способах организации хранения исторических данных в Oracle.
Смотреть статью
9 717
🖥 Как полностью очистить таблицу sql
Полностью очистить таблицу, не удаляя её можно с помощью запроса DELETE. Мы указываем имя таблицы, но опускаем блок WHERE. Тогда удаляются абсолютно все записи, вне зависимости от условий.
DELETE FROM wiped_table_name;
-- Мы очистили таблицу wiped_table_name
Кроме DELETE без условий можно использовать TRUNCATE. У неё есть свои особенности. Самая главная, она быстрее DELETE, так как не сканирует таблицы перед очисткой и наиболее полезна для очистки больших таблиц.
TRUNCATE cars, cups, parrots;
-- Тут можно перечислять сколько угодно таблиц
Крайне рекомендую глянуть документацию по TRUNCATE, она очень подробная: https://postgrespro.ru/docs/postgrespro/9.5/sql-truncate
@sqlhub9 717
Город засыпает, просыпаются рекрутеры и делают выбор: кто попадет в команду разработки внутренних продуктов.
Мы в МТС любим играть в мафию и проводить One day offer. И подумали, почему бы не совместить эти две активности и заодно найти аналитиков разных профилей. Наша команда развивает сервисы в рамках экосистемы HR Tech. Например, разработка системы управления эффективностью или создание корпоративного портала для сотрудников. У нас амбициозные планы — стать первым цифровым HR с комплексным подходом к разработке и поддержке внутренних продуктов. Но для этого нам нужны настоящие профи.
Готовы участвовать и проверить — вы Дон SQL или мирный аналитик? Кликайте по ссылке и начните игру. Да, нужно успеть до 19 июня
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
