Программирование
5 вопросов для интервью Easy SQL из настоящего интервью
..И ответы! Из моего интервью с аналитиком данных в Amdocs!
Интервью SQL. 💯
Ранее в этом году я взял интервью в Amdocs, Индия, на должность аналитика данных и разработчика Power BI. Хотя я не прояснил это, я записал все 5 вопросов, заданных интервьюером.
В следующие 3 минуты вы выучите 5 вопросов SQL, за которыми последуют ответы на них.
Это вопросы из РЕАЛЬНОГО собеседования для должности начального уровня. Итак, вы можете быть готовы к следующему собеседованию в этой области.
🎁 В моем репозитории Github есть множество проектов с ответами для вашей практики. Это может быть дополнительным выводом из этой статьи!
Примечание 1: я использовал SQLite DB Browser ♻️, чтобы ответить на эти вопросы.
Примечание 2. Для этого интервью не было подписано NDA, поэтому я могу написать об этих вопросах.
Интервьюер предоставил мне структуру таблицы, то есть названия столбцов таблицы. Поскольку это было виртуальное собеседование 💻, меня попросили написать SQL-запросы в окне чата.
Чтобы показать здесь, я заполнил таблицу фиктивными данными, как показано ниже.
1. Показать страну и количество различных штатов в стране.
Это было довольно просто, и я тоже понял его правильно.
SELECT Country, count(DISTINCT State) FROM table1 GROUP BY Country
2. Отображение Имена клиентов, для которых Цена выше, чем средняя Цена для всех клиентов.
Мой подход заключался в использовании подзапроса в предложении HAVING.
SELECT Name, sum(Price) FROM table1 GROUP BY Name HAVING sum(Price) > (SELECT avg(Price) FROM table1)
Средняя цена для всех покупателей составила 144,29.
Подробнее об этом подходе вы можете прочитать ниже. ♻️
3. Отображение имени клиента и суммы цены за 2019 год.
Это был простой случай предложений WHERE и GROUP BY
SELECT Name, sum(price) FROM table1 WHERE strftime('%Y',OrderDate) = "2019" GROUP BY Name
4. Отобразите 5 самых высоких цен, сгруппированных по годам.
Это хороший вопрос об извлечении свойства даты и времени из столбца «OrderDate».
SELECT strftime('%Y',OrderDate) AS "Year", sum(price) FROM table1 GROUP by Year ORDER BY sum(Price) DESC LIMIT 5
5. Отобразите от 2 до 6 самых высоких цен (оставьте максимальную цену)
В то время я не мог ответить на этот вопрос, насколько мне было известно. Позже я нашел простое решение, как показано ниже.
SELECT Name, dense_rank() OVER (ORDER by Price DESC) ranker, Price FROM (SELECT Name, Price FROM table1 ORDER BY Price LIMIT 6) LIMIT 5
Дополнительная информация об использовании подзапроса в предложении FROM находится здесь. ♻️
Вы можете расширить свои знания SQL с помощью этих статей, связанных с SQL.
✅ Создайте собственную базу данных SQL с помощью Python
✅ Визуализируйте данные SQLite с помощью PowerBI
✅ Лучшие хитрости Python для экономии времени в 2021 году
Теперь вы можете читать все статьи о Medium. Вот как это сделать.
Зарегистрируйтесь здесь и Присоединяйтесь к моим подпискам по электронной почте
стать участником Medium сегодня и получить ⚡ неограниченный ⚡ доступ ко всем историям Medium.
Когда вы зарегистрируетесь здесь и решите стать платным участником Medium, я получу часть вашего членского взноса в качестве вознаграждения.
Спасибо за чтение! И твое время!
Вы всегда можете связаться со мной, чтобы получить конструктивный отзыв или хорошее обсуждение аналитики данных. 📈📊 📉
❓ Заинтересованы в обучении через проекты ??
Посмотрите несколько проектов в моем репозитории Github.