реклама
разместить

7 вопросов по SQL на собеседовании в Microsoft, Airbnb, Twitter с ответами

От автора Telegram-канала Аналитика и Growth mind-set.

Вопросы и ответы взяты с зарубежных карьерных сайтов.

Microsoft

Найдите общее количество загрузок для платных и бесплатных пользователей по дате. Включайте только те записи, в которых неоплачиваемые клиенты имеют больше загрузок, чем платные клиенты. Вывод должен быть сначала отсортирован по самой ранней дате и содержать дату в 3 столбцах, бесплатные загрузки, платные загрузки.

ms_user_dimension user_id:int acc_id:int
ms_acc_dimension acc_id:int paying_customer:varchar
ms_download_facts date:datetime user_id:int downloads:int

ОТВЕТ:

with out AS(select date , Sum (downloads) Filter(Where paying_customer = 'no') as non_paying , Sum (downloads) Filter(Where paying_customer = 'yes') as paying From ms_download_facts fact Left Join ms_user_dimension a on fact.user_id = a.user_id Join ms_acc_dimension acc on a.acc_id = acc.acc_id Group by date order by date) Select date , non_paying , paying From out Where non_paying > paying

Как выучить SQL быстрее? Читайте в посте!

Airbnb

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

airbnb_search_details id:int price:float property_type:varchar room_type:varchar amenities:varchar accommodates:int bathrooms:int bed_type:varchar cancellation_policy:varchar cleaning_fee:bool city:varchar host_identity_verified:varchar host_response_rate:varchar host_since:datetime neighbourhood:varchar number_of_reviews:int review_scores_rating:float zipcode:int bedrooms:int beds:int

ОТВЕТ:

SELECT city, property_type, avg(bedrooms) as n_bedrooms_avg, avg(bathrooms) as n_bathrooms_avg FROM airbnb_search_details GROUP BY city, property_type ORDER BY city

Twitter

Найдите сотрудника с самой высокой зарплатой в каждом отделе. Выведите название отдела, имя сотрудника и соответствующую зарплату.

employee id:int first_name:varchar last_name:varchar age:int sex:varchar employee_title:varchar department:varchar salary:int target:int bonus:int email:varchar city:varchar address:varchar manager_id:int

ОТВЕТ:

SELECT department as department, first_name as employee_name, salary FROM employee WHERE (department, salary) IN (SELECT department, MAX(salary) FROM employee GROUP BY department)

Amazon

Напишите запрос, который будет идентифицировать возвращающихся активных пользователей. Вернувшийся активный пользователь — это пользователь, совершивший вторую покупку в течение 7 дней после любой другой покупки. Выведите список user_id этих вернувшихся активных пользователей.

amazon_transactions id:int user_id:int item:varchar created_at:datetime revenue:int

ОТВЕТ:

SELECT DISTINCT(a.user_id) FROM amazon_transactions a JOIN amazon_transactions b ON a.user_id = b.user_id WHERE a.created_at - b.created_at BETWEEN 0 AND 7 AND a.id != b.id

Найдите клиента с самой высокой суммой дневных заказов в период с 01.02.2019 по 01.05.2019. Если у клиента было более одного заказа в определенный день, суммируйте стоимость его заказов в этот день. Выведите имя клиента, общую стоимость его товаров и дату.

customers id:int first_name:varchar last_name:varchar city:varchar address:varchar phone_number:varchar
orders id:int cust_id:int order_date:datetime order_details:varchar total_order_cost:int

ОТВЕТ:

select c.first_name, sum(o.total_order_cost) as total_order_cost, o.order_date from customers c inner join orders o on c.id = o.cust_id where o.order_date between '2019-02-01' and '2019-05-01' group by first_name, cust_id, order_date order by total_order_cost desc limit 1

Dropbox

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

​db_employee id:int first_name:varchar last_name:varchar salary:int department_id:int
db_dept id:int department:varchar

ОТВЕТ:

select abs(max(salary) filter (where department = 'marketing') - max(salary) filter (where department = 'engineering')) from db_employee emp LEFT JOIN db_dept dept on emp.department_id = dept.id

Salesforce

Найдите самую высокую цель, достигнутую сотрудником или сотрудниками, работающими под менеджером с id 13. Выведите имя сотрудника/сотрудников и достигнутую цель. Решение должно показывать самую высокую цель, достигнутую при manager_id=13, и какие сотрудники ее достигли.

salesforce_employees id:int first_name:varchar last_name:varchar age:int sex:varchar employee_title:varchar department:varchar salary:int target:int bonus:int email:varchar city:varchar address:varchar manager_id:int

ОТВЕТ:

select first_name, target from salesforce_employees where manager_id=13 and target=(select max(target) from salesforce_employees where manager_id=13)

А если вы интересуетесь аналитикой, то вот бесплатные курсы от лучших университетов в моем телеграм канале:

10+ бесплатных курсов по аналитике данных от Harvard University, Google, IBM и других

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

HARVARD UNIVERSITY

Data Science: Wrangling. На курсе научитесь обрабатывать и преобразовывать необработанные данные в форматы, необходимые для анализа.

Data Science: Visualization. Изучите основные принципы визуализации данных.

Data Science: Machine Learning. На курсе изучите машинное обучение. Создатите систему рекомендаций фильмов и изучите научные основы одного из самых популярных и успешных методов обработки данных.

И другие курсы от университета

GOOGLE DATA ANALYTICS Professional Certificate

В этой программе вы освоите востребованные навыки, которые помогут вам подготовиться к работе менее чем за 6 месяцев. Никакой степени или опыта не требуется. Курс состоит из 8 подкурсов, посвященных конкретной теме в аналитике данных.

IBM

IBM - это один из крупнейших в мире поставщиков программного обеспечения.

Курс состоит из нескольких частей: введение, визуализация данных, основы Python, SQL, анализ данных с помощью Python, визуализация с помощью Python, итоговый проект.

OPENLEARN

Бесплатный восьминедельный курс OpenLearn по кодированию «Учитесь кодировать для анализа данных» дает четкое представление об основных концепциях программирования и анализа данных, и вы даже сможете писать простые аналитические алгоритмы в среде программирования.

UDEMY

Udemy предлагает тысячи курсов по анализу данных и науке о данных от различных загрузчиков. Это не курсы от Harvard, Google и IBM, однако можно найти что-то полезное для себя.

CAREER FOUNDRY

Бесплатный краткий курс по аналитике данных CareerFoundy, состоящий из 6 частей, идеально подходит, если вам нужно легкое введение в аналитику данных.

Приятного обучения!

#бесплатные_курсы

А тут 5 бесплатных сервисов для практики SQL:

5 бесплатных сервисов для практики SQL

Когда вы только начинаете изучать SQL, нужно как можно больше практики. Хорошо, когда есть реальные задачи на работе, на которых можно практиковаться. Но если их нет - то эти бесплатные сервисы помогут получить необходимую практику и улучшить свой уровень.

1. HackerRank

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

2. Strata scratch

Это замечательная платформа для подготовки к собеседованиям и тренировки навыков. Здесь не просто задачи по SQL, а задачи от топ компаний: Google, Netflix, Apple, Airbnb, Spotify и других.

3. SQLBolt

Это сайт объясняет концепции языка SQL и включает полезные практические упражнения по каждой лекции. Довольно простой, но очень подойдет для новичков.

4. W3schools

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

5. SQL EX

Честно говоря, даже не захотелось разбираться, что к чему на этом сайте, так как выглядит он как мягко говоря древне. Но многие его рекомендовали мне, поэтому включаю в список. И сайт на русском.

#sql

55
реклама
разместить
Начать дискуссию
Французская Waiting For Ideas представила виниловый проигрыватель из цельного алюминия за €5800

PP-1 изготавливают на заказ, ждать нужно около 12 недель.

Waiting For Ideas
99
66
22
11
11
Аудиофил не мамонт
реклама
разместить
Видео выходного дня: глава Meta* Марк Цукерберг танцует и поёт в блестящем голубом комбинезоне

Предприниматель выступил на дне рождения супруги, позже написав: «Жене бывает 40 только раз».

1414
22
11
Когда осознал, что реальная жизнь лучше виртуальной
Microsoft прекращает поддержку Skype 5 мая 2025. Чем заменить мессенджер?
Microsoft прекращает поддержку Skype 5 мая 2025. Чем заменить мессенджер?
1212
5 причин почему люди теряют свои Telegram каналы или гайд как убить актив в своем сообществе

Ни для кого не секрет, что Telegram из мессенджера превратился в целую экосистему, где можно не только общаться, но и зарабатывать деньги. Однако, чем больше “бизнесменов” заходят в телеграм, тем больше мертвых каналов появляется. Потратить бюджет около миллиона рублей, а вместо окупаемости через 10 месяцев получить мертвый канал. Звучит как фиаско…

5 причин почему люди теряют свои Telegram каналы или гайд как убить актив в своем сообществе
33
11
День 1102: ЦБ «жёстко настроен» на возвращение инфляции к цели в 4%

Собираем новости, события и мнения о рынках, банках и реакциях компаний.

Источник фото: РИА Новости
3030
22
11
11
11
ЦБ вечно прогнозирует и каждый раз жидко... ошибается. Но в царстве иллюзий и 2% инфляция может быть.
От $80 тысяч до $1 млн в год: Business Insider рассказало о средних зарплатах иностранных специалистов в Netflix

Тех, у кого рабочая виза или грин-карта.

Источник фото: The Hollywood Reporter
1212
11
Прокачал себе процесс проектирования баз данных, и поделился инструментом с миром

В этом кейсе я расскажу, как я из идеи об инструменте которого мне не хватало в моих рабочих процессах, с чистого листа создал в одиночку стартап, проведя его через все этапы от проектирования до запуска, своими руками (и мозгами) делая всю работу. Какой получился результат, принёс проект пользу лично мне, и оказался ли полезен людям. Погнали!

🤩 Совсем другое дело! Вот так процесс проектирования баз данных действительно может приносить удовольствие!
11
66 вариантов где опубликовать свою статью. В одной табличке с названиями, сайтами и описаниями. Делюсь с вами

Будет полезна тем, кто продвигается через контент и/или seo.

66 вариантов где опубликовать свою статью. В одной табличке с названиями, сайтами и описаниями. Делюсь с вами
5050
99
22
22
22
11
[]