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
Хотите перейти на новый уровень в C# разработке?

👉 Приглашаем 12 июля в 20:00 мск вас на открытый урок в OTUS.
Тема: Примитивы многопоточности .Net

На уроке разберем такие примитивы многопоточности, как

— Барьеры;
— Условные события (ManualResetEvent/AutoResetEvent);
— Потоко-безопасные очереди (блокируемые и неблокируемые)

Дополнительно обсудим:
— Как писать код без Thread.Sleep
— Где еще можно использовать многопоточность
— Чем отличается многопоточный код от асинхронного.

📌 Вебинар пройдет в рамках онлайн-курса «C# Developer. Professional» и позволит вам углубить свои знания о платформе .NET и научиться решать сложные задачи языка C#.

Не упустите шанс протестировать курс и стать еще более компетентным C# разработчиком. Больше полезных тем ждет вас на курсе, доступном в рассрочку.

👉 Для участия во встрече пройдите вступительный тест https://otus.pw/VX4p/

Нативная интеграция информация о продукте www.otus.ru
Решение сегодняшней задачи на логику и мышление.

Число 33. Решение: к первому числу прибавляем 1, второе число умножаем на 1, к третьему прибавляем 2, следующее умножаем на 2, затем прибавляем 3, следующее умножаем на 3 и т. д.

#логика
💩7😁2
Можно ли упростить приведенный запрос с UNION? Если да, то как?
SELECT id, prod_id, price FROM goods WHERE price <= 5 UNION SELECT id, prod_id, price FROM goods WHERE id IN (100,104)
Anonymous Quiz
22%
SELECT id, prod_id, price FROM goods WHERE price = 5 AND id IN (100,104)
4%
SELECT id, prod_id, price FROM goods WHERE price = 5 !AND id IN (100,104)
36%
SELECT id, prod_id, price FROM goods WHERE price = 5 OR id IN (100,104)
5%
Упростить нельзя
26%
Нет верного варианта ответа
8%
Посмотреть ответ
💩17👎10👍1
Как в SQL выбрать все записи из таблицы "Persons", где значение столбца "FirstName" равно "Peter"?
Anonymous Quiz
2%
SELECT [all] FROM Persons WHERE FirstName='Peter'
4%
SELECT [all] FROM Persons WHERE FirstName LIKE 'Peter'
1%
SELECT * FROM Persons WHERE FirstName<>'Peter'
92%
SELECT * FROM Persons WHERE FirstName='Peter'
1%
Посмотреть ответ
🤡16👍2🥰1
#вопрос66

Можно ли явным образом задать значение поля AUTO_INCREMENT?

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

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

Да, можно. Например, так:

SET IDENTITY_INSERT TABLE1 ON

INSERT INTO TABLE1 (ID,NAME)
SELECT ID,NAME FROM TEMPTB1

SET IDENTITY_INSERT OFF

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

Коля и Петя, встретившись на улице, увидели написанное мелом на асфальте двузначное число. Петя прибавил к нему 4 и затем поделил на 7, а Коля поделил его на 9 и затем отнял 1. Результаты совпали. Какое число было написано?

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

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

Ребята шли навстречу друг другу. Петя увидел число 66, а Коля увидел число 99. Оба в результате вычислений получили 10.

#логика
👍1🥰1
Трюк дня. Как заменить NULL на значение предыдущего значения?

Делается следующий запрос:

SELECT *, 
CASE WHEN Sum_ IS NOT NULL THEN Sum_
ELSE COALESCE(Sum_, 0)
END AS first_Non_Null
FROM dbo.VIEW_1;
GO

Допустим, запрос возвращает:

Index_data | Sum_
_____________________
20.10.2015 | 8
21.10.2015 | 2
22.10.2015 | NULL
23.10.2015 | 5
24.10.2015 | NULL
25.10.2015 | NULL
26.10.2015 | 6

Желаемый результат:

Index_data | Sum_
_____________________
20.10.2015 | 8
21.10.2015 | 2
22.10.2015 | 2
23.10.2015 | 5
24.10.2015 | 5
25.10.2015 | 5
26.10.2015 | 6

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

#tips
Трюк дня. Как заменить NULL на значение предыдущего значения?

Используйте функцию LAG:

SELECT index_data, 
coalesce(Sum_, LAG(Sum_) OVER(ORDER BY index_data))
FROM dbo.VIEW_1;

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

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

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

Не пропустите открытый урок «Хранимые процедуры и функции в Postgresql», который состоится 18 июля в 20:00!

⬆️ На встрече вы узнаете, как использовать ненативные языки для написания хранимых процедур и функций в Postgresql на примере С и Python.

👉 Готовьте вопросы и записывайтесь на вебинар!
https://otus.pw/NEsL/

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

Как получить последний id без использования функции max?

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

#вопросы #собеседование
👍1🥰1👏1
Ответ на #вопрос67

В MySQL:

select id from table order by id desc limit 1

В SQL Server:

select top 1 id from table order by id desc

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

Средневековье, вы прислуживаете при королевском дворе. В один из дней король обвиняет вас в шпионаже и велит казнить. Но, предлагает выбрать способ смерти. Какой смерти попросить, чтобы выжить?

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

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

Попросить у короля смерти от старости.

#логика
💪 Пройди тест по MS SQL и проверь свои знания.

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

⚠️ Освойте востребованные компетенции, чтобы уже через полгода вырасти с мидла до сеньора! 

📌 ПРОЙТИ ТЕСТ:
https://otus.pw/0xen/

Нативная интеграция. Информация о продукте www.otus.ru
Есть библиотека с книгами. Оперируя сущностями «Книга» и «Автор», вы хотите сохранить реестр своей библиотеки в БД. Сколько таблиц понадобится для эффективного хранения такой структуры в 3-й нормальной форме?
Anonymous Quiz
7%
1
31%
2
56%
3
2%
4
4%
Посмотреть ответ
Готовый кластер баз данных c полусинхронной или синхронной репликацией на ваш выбор в @Selectel

Создание и обслуживание своего кластера БД требует значительных инвестиций в оборудование, квалифицированного персонала и больших временных затрат. Облачные базы данных — способ быстро создать надежную, отказоустойчивую и масштабируемую БД с экономией ресурсов.

В Selectel доступны версии MySQL sync с синхронной репликацией и MySQL semi-sync — с полусинхронной. Полусинхронная репликация обеспечивает максимальную производительность, а синхронная — надежность хранения и записи данных на самом высоком уровне. Такая СУБД больше подходит для чувствительных к безопасности данных сфер. К ним относятся банки, телекоммуникационные компании и т. д.

Преимущества MySQL как сервиса:

▫️ Запуск отказоустойчивого кластера с готовой системой бэкапов и мониторинга в несколько кликов.

▫️ Возможность изменить конфигурацию сервера и количество реплик в панели управления, REST API или Terraform с увеличением нагрузки.

▫️ Вычислительные ресурсы облачной платформы с процессорами Intel® Xeon® Scalable и AMD EPYC и локальными дисками NVMe.

▫️ Надежность работы с информацией. Арендуя облачные БД в Selectel, вы соблюдаете требования закона, которые касаются безопасного хранения персональных данных (152-ФЗ).

Создайте управляемую базу данных в несколько кликов и доверьте ее развертывание и администрирование надежному провайдеру: https://slc.tl/iv66h

Реклама ООО «Селектел» 2VtzqvL9sJV