SQL Pro
5.08K subscribers
142 photos
2 videos
10 files
127 links
SQL Pro - всё об SQL
Реклама: @anothertechrock

Контент канала:
1. Разбор вопросов с собеседований
2. Трюки SQL
3. Видео
4. Тесты
5. Задачи на логику
6. Юмор
Download Telegram
Трюк дня. Как сделать запрос на соединение двух таблиц в MySQL?

1. Если список серийных номеров велосипеда в обеих таблиц совпадает (нет таких элементов, которые есть в одной таблице, но нет во второй), то можете использовать внутреннее соединение join (inner join):

SELECT s.sportsman, s.serial, b.color, b.year
FROM sportsmen s JOIN bike b ON s.serial = b.serial

Либо:

SELECT s.sportsman, s.serial, b.color, b.year
FROM sportsmen s, bike b
WHERE s.serial = b.serial

2. Eсли список серийных номеров велосипедов не совпадает, то при соединении таблиц с помощью внутреннего соединения inner join (join) можно потерять нужные строки, поэтому для сохранения всех строк в левой таблице надо использовать left join:

SELECT s.sportsman, s.serial, b.color, b.year
FROM sportsmen s LEFT JOIN bike b ON s.serial = b.serial

#tips
#вопрос63

В чем разница между однорядными и многорядными функциями? Для чего используется GROUP BY?

Решение будет вечером.

#вопросы #собеседование
🔥 Observability — важный аспект в мире разработки и эксплуатации систем. Начните осваивать инструменты наблюдаемости с Grafana.

📢📢 Приходите 20 июня 20:00 мск на открытый урок «Grafana — основной инструмент визуализациии данных».

Вебинар приурочен к старту онлайн-курса «Observability: мониторинг, логирование, трейсинг» в OTUS.

Вместе с Евгением Непомнящим, разработчиком в IT-Sense, мы:
▫️ Рассмотрим построение графиков из различных источников данных при помощи Grafana.
▫️ Поговорим про историю проекта, использование различных источников, формирование и версионирование собственных дашбордов.
▫️ Затронем добавление Data Source, работу с данными через Explore, импорт готовых дашбордов, обзор элементов существующего дашборда и создание дашборда.

После вебинара вы сможете приобрести полный курс в рассрочку.

👉 Чтобы записаться на занятие, пройдите вступительное тестирование. https://otus.pw/QGBC/

Нативная интеграция. Информация о продукте www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
Ответ на #вопрос63

Однорядные функции одновременно работают только с одной строкой, а многорядные функции – с данными из нескольких строк.

Команда GROUP BY объединяет все записи, имеющие одинаковые значения в определенном поле или любой группе полей.

#вопросы #собеседование
👍1
Задача на мышление и логику.

Расставьте скобки и математические знаки так, чтобы равенство было верным: 9999999 = 100

Решение будет вечером.

#логика
Решение сегодняшней задачи на логику и мышление.

(99-9):9 + (99-9) = 100;

999/9-99/9=100;

(99-99)* 999 = 10*0 и еще рядом других способов.

#логика
Как получить высшее образование в сфере экономики дистанционно?

Skillbox совместно с СПбПУ проводит набор на программу дистанционного высшего образования. Направление «Инвестиционный и финансовый анализ», профиль «Экономический консалтинг».

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

После обучения вы сможете:

— исследовать конкурентов и рынки сбыта;

— разбираться в финансовом моделировании;

— управлять финансами и инвестициями;

— анализировать риски и формулировать идеи по их минимизации.

Вы будете решать реальные бизнес-задачи в рамках курсовых и практических работ и сможете добавить их в портфолио.

Переходите по ссылке, чтобы узнать подробную информацию: https://epic.st/-Pa8gp

Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
Какой оператор SQL используется для возврата только разных значений?
Anonymous Quiz
12%
SELECT DIFFERENT
12%
SELECT UNIQUE
73%
SELECT DISTINCT
2%
Посмотреть ответы
20230615-792-1fh9afh.gif
17.6 MB
🔥 Тест для разработчиков, тимлидов и архитекторов!🔥

Ответьте на 11 вопросов и узнайте, достаточно ли у вас знаний, чтобы пройти онлайн-курс «Software Architect» в OTUS.
Курс поможет прокачать весь арсенал навыков, необходимых архитектору ПО. 

👉 ПРОЙТИ ТЕСТ https://otus.pw/UQXR/

💣 Пройдете тест и получите:
✔️ Живое общение с экспертами-практиками
✔️ Лучшие открытые уроки прошлых наборов курса
✔️ Продвинутые темы и практика на «боевых» задачах уровня Middle+
✔️ Скидку на прохождение онлайн курса «Software Architect».

Курс доступен в рассрочку.

Нативная интеграция. Информация о продукте www.otus.ru
👍1
В реляционных базах данных данные хранятся в таблицах, которые являются
Anonymous Quiz
19%
одномерными
59%
двумерными
3%
трехмерными
20%
любыми из перечисленных выше
👍1
⚠️ Как разработчику повысить свою зарплату?
Один из вариантов — освоить MS SQL.

🦾 Знание этой СУБД может стать вашим конкурентным преимуществом и аргументом для повышения заработной платы.

Пройди хардкорный тест по MS SQL и проверь свой уровень.

Ответишь — пройдешь на углубленный курс «MS SQL Server Developer» от OTUS по специальной цене + получишь мастер-класс от преподавателя

🧑‍💻 Регистрируйся на открытый урок «Генерируем QR код в MS SQL server» и протестируй обучение 28 июня — https://otus.pw/qopS/

🔥 ПРОЙТИ ТЕСТ
https://otus.pw/Qy35/

Нативная интеграция. Информация о продукте www.otus.ru
#вопрос64

В чем разница между условиями WHERE и HAVING?

Решение будет вечером.

#вопросы #собеседование
Ответ на #вопрос64

Если в запросе не используется GROUP BY, то условия WHERE и HAVING эквивалентны.

Но при использовании GROUP BY:

Условие HAVING используется для фильтрации значений из группы (т. е. для проверки условий после выполнения агрегации в группы).
Условие WHERE используется для фильтрации записей из результата до срабатывания какой-либо группировки.

#вопросы #собеседование
⚠️ 3 из 5 компаний уже перешли с Oracle и MS SQL на PostgreSQL.

PostgreSQL хорошо выполняет сложные запросы и позволяет создавать высокодоступные отказоустойчивые и параллельные кластера под "тяжелые" задач

🦾 PostgreSQL — навык, открывающий двери в более интересные и перспективные проекты.

Протестируйте обучение на открытых уроках:

❇️ Хранимые процедуры и функции в PostgreSQL, 4 июля в 20:00
Разберем основы разработки элементов серверной логики. SQL и Pl/Pgsql
➡️ https://otus.pw/cSVK/

❇️ Хранимые процедуры и функции в PostgreSQL — дополнительные возможности, 18 июля в 20:00
Рассмотрим использование ненативных языков для написания хранимых процедур и функций в PostgreSQL на примере С и Python
➡️ https://otus.pw/AABn/

Нативная интеграция. Информация о продукте www.otus.ru
👍2👎2
Задача на мышление и логику.

Напишите десятизначное число так, чтобы: первая цифра означала количество единиц в нем, вторая цифра означала количество двоек, третья цифра означала количество троек, и так далее до десятой цифры, которая означает количество нулей.

Решение будет вечером.

#логика
👍2
Решение сегодняшней задачи на логику и мышление.

Получается число 2100010006.

#логика
Трюк дня. Как объединить 2 таблицы, чтобы условие по второй было не обязательное?

Таблица Attr:

code  user_code  attr_code  attr_value
1 24 8 1
2 24 4 1
3 24 3 1
4 24 2 1


Таблица Users:

code  name
24 Bolodya


Запрос:

select * from Users join Attr on Users.code = Attr.user_code 
where Users.code = 24 and Attr.attr_code = 8;

выдаст искомую строку, только если в таблице Attr есть запись с attr_code = 8 и user_code = 24.

Напишите такой запрос, чтобы поля из таблицы Users выводились в любом случае, а поля из Attr только если есть запись с attr_code = 8(если таковой нет - на месте этих полей будет просто пустота).

Решение будет вечером.

#tips
👍3
Трюк дня. Как объединить 2 таблицы, чтобы условие по второй было не обязательное?

Можно использовать left join и в условие объединения таблиц добавить Attr.attr_code = 8.

select * from Users 
LEFT join Attr on Users.code = Attr.user_code and Attr.attr_code = 8
where Users.code = 24;

#tips
👍3