Вопросы на собеседовании по SQL и ответы на них. Илья Хохлов. Часть 2
ฝัง
- เผยแพร่เมื่อ 5 ก.ย. 2024
- Типичные вопросы на собеседовании по SQL и подробные ответы на них. Илья Хохлов. Часть 2
Вопросы с собеседований по SQL и реальные практические задачи в нашем Телеграм-Канале: t.me/sql_oracl...
#Уроки_SQL #Вопросы_на_собеседовании_по_SQL #Илья_Хохлов
Спасибо большое за видео. Единственное было сложно смотреть, так как часто уже озвученные мысли неоднократно повторялись. Думаю, если повторы убрать, видео станет короче. Тратить 20 минут на 3 задачи - непозволительная роскошь)) На той же курсере видео в среднем длятся 5 минут, но материал хорошо объясняется. SQL используют аналитики, они должны быстро соображать)) Но за видео спасибо)) Мне был интересен момент с having.
Большое Вам спасибо за комментарий и пожелания! Будем учитывать!
До этого не понимал having, спасибо большое
И Вам большое спасибо за добрые слова!
Незаслуженно мало просмотров! Смотрела бы и смотрела целый день, честно :) Очень приятная подача информации: голос, интонация, такое дружелюбие по отношению к зрителю/ученику. За два видео подкорректировала кое-какие знания, а вообще лайк и подписка!
Спасибо огромное за такие отзывы! Очень очень приятно!
Спасибо за объяснение разницы между WHERE и HAVING - теперь мне всё понятно :)
Спасибо, Николай, за хороший отзыв!
Классный пример запроса был с Where и Having. Думал что знал разницу, а это прямо супер пример для осознания разницы.
Спасибо Вам большое за обратную связь!
Спасибо, вы очень хорошо обьясняете) Разницу между where и having знала, но поверхностно, ваше видео все прояснило.
Здравствуйте, Анна! Спасибо Вам за отзыв! И очень рад, что нашли полезную информацию!
Спасибо! Все понятно! Вы алмаз в море Ютуба!
Здравствуйте! Спасибо Вам!
Мужик , ты крутой ! Подписываюсь и завтра начинаю смотреть твой курс 🤝
Спасибо, очень нравится формат!
Разжовываете на мой взгляд так, что и до улитки уже дойдёт.)
Полезные уроки, спасибо за труд!
Илья, БОЛЬШОЕ спасибо Вам..... После Ваших видео и советов - появляется МОТИВАЦИЯ!)
Кайф! Спасибо за видео! Может, сделаете 3ю часть?😅
Приятно слушать - очень увлеченно рассказываете! Супер!
Спасибо Вам за внимание! Всегда приятно!
В зависимости от субд алиас поля можно использовать в предикате. Поэтому, лучше уточнять у интервьюера тип субд на которой выполняется запрос
Вы реально крутой преподаватель. Лайк!
Спасибо большое!
Какой же приятный голос и понятное объяснение! Усыновите меня пожалуйста, Илья (ну или возьмите джуном на худой конец)
просто бесподобное видео!
Спасибо Вам за отзыв!
Человек отлично объясняет, всем кому кажется избыточным мб и так, ну поставьте большую скорость. Приятный голос и очень доступно объсняет спасибо большое
Братишка просто пулемёт . Я сам гуру SQL Но ты меня взгрел прослушал на одном дыхании и у меня встал а когда пыль улеглась я кончил . Молоток пулеметная лекция . 👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍👍
Знал разницу, но благодаря Вам освежил знания)
Спасибо за просмотр и оставленный добрый комментарий!
Спасибо за ваш труд! Осень доходчиво!!!
Спасибо Вам за добрые слова!
Эх.. если бы лекторы говорили и несли предмет так как ты)
Спасибо!
Спасибо за такой классный комментарий! Ещё вопросики поразбираем! Надеюсь, в январе видео выложим! :)
@@PrimeSoft , актуально)
Полезно было повторить ) всё правильно ответил !) Спасибо за видео !
Я думал что я знаю разницу между where and having но оказывается я половину озвученную информацию не знал, спасибо Вам большое
Я лайк поставил из-за автора, который пышет позитивом. Такого человека приятно слушать❤ Спасибо за полезную информацию
Понятнее чем объясняют на лекции в универе. Мне было понятно все что вы говорили. Буду знать как отвечать правильно на собеседовании.Cпасибо вам.
Спасибо! Очень доступно подана информация!
Здравствуйте, Лариса! Спасибо Вам за внимание
Спасибо Илья, хорошее видео, вы молодец
Сергей, спасибо!
Спасибо Илья 🙂
Крутые примеры. Хотелось бы увидеть ещё.
Благодарю за четкое обьяснение важной информации! 3 вопрос понял очень досконально.
Чувак, интересные задачи и всё такое но блин, на 10й минуте начинает болеть голова от отвоих повторов в речи. Зачем так много раз говорить одно и то же, максимум два раза будет достаточно. Такое чувство, что во время обьяснения твой мозг уходит в рекурсию и начинает повторно обяснять еще n раз
Не соглашусь, если фоном во время уборки слушать идеально😂
Спасибо, Илья! Было бы круто записать видос с собеса с реальными актуальными вопросами
Спасибо. Очень полезный ролик для начинающих.
Спасибо большое. Чувствуется большое желание донести материал. Спасибо большое за having))
Здравствуйте! Спасибо Вам большое за внимание! И за комментарий!
Спасибо за видео! Полезный материал!
Виталий, спасибо Вам за просмотр!
Большое спасибо автору. Удалось закрыть для себя некоторые пробелы в теории. Удачи вам и вдохновения на следующие видео :)
Спасибо Вам за полезные видео!
Спасибо Вам за просмотр!
Здорово. Чёткое объяснение задач
Здравствуйте, Вадим! Спасибо Вам за комментарий!
Доступно объясняешь, лайк)
Благодарю вас!!! Очень интересно и понятно
И Вам спасибо большое за бесценное внимание!
Ставлю лайк
Спасибо!
Огромное спасибо. Ценим труд автора
Спасибо и вам Илья! Классные примеры 👌
Большое спасибо за видео. Все понятно и доходчиво!
спасибо вам большое
Отличное видио , всё ясно , понятно .Автор красава!
Здравствуйте, Иван!
Спасибо!
Спссибо за контент)
Очень круто,спасибо)
Круті відео, дякую.
И Вам большое спасибо за внимание!
Очень доходчиво, большое спасибо!
Спасибо Вам большое!
Супер, спасибо за разъяснения!
2 задачу можно решить подзапросом: Select t2.id_item, t2.name_item, t2.year_import from (select t1.id_item, t1.name_item, extract(year from t1.date_import) as year_import from table t1) t2 where t2.year_import>2010
Крутяк
Хотелось бы мне попасть на такое собеседование, с такими простыми вопросами:) но подача у вас очень хорошая. Может быть вам курс по sql записать?)
Он очень плохо и недоступно объясняет)))
а можете дать контакт,где объясняют получше?
@@Forest_dahfksd
HAVING же работает с уже готовой(созданной после проделанных операций) таблицей, разве мы не могли написать:
HAVING TOTAL_SUM > 100000?
супер полезный ролик ) спасибо автору
Спасибо Вам за внимание и отзыв!
Во второй задаче можно просто еще было бы в подзапрос закинуть и использовать как раз date_import
Пример:
Select * from (select extract(year from sysdate) as year_import from dual) where year_import>2010
Спасибо большое за видео!
Спасибо, очень качественно!
Union all соединяет 2 таблицы, union - соединяет и удалять дубликаты. Мне так понятно.
Аналогия для тех кто работал со сводными таблицами в эксель. WHERE работает как фильтрация на уровне простой таблицы. GROUP BY своего рода аналог сводной таблицы по функциям SUM, AVG, MIN и т.д. Соответственно фильтрация как бы это было в сводной таблице для сгруппированных диапазонов реализуется через HAVING. (Это аналогия чтобы было проще понять)
Спасибо автору!
Вам спасибо, что посмотрели!
Полезное видео, спасибо
Спасибо Вам за комментарий!
HAVING может спокойно применяться без GROUP BY и работать с алиасами полей, другими словами HAVING просто может фильтровать набор который уже отработал запрос
Большое спасибо за уроки, но просто очень много повторов и много слов!!!)
Олег, спасибо за комментарий! В новых видео стараемся меньше повторяться повторяться :)
Спасибо, полезно ❤
Благодарю, было полезно!)
Насчет where и having - не упомянул, что поведение having можно заменить через подзапрос и where.
А так все круто, подача хорошая!
Ты крутой! Спасибо)) В четверг собеседование, посмотрим что из этого получится ))))
Крутой комментарий! Спасибо! :)
Напишешь потом, как прошел собеседование? :) И если будут интересные вопросы! :)
По существу можно было сказать что where используется в процессе итерации, то есть в момент переборки данных, а having для фильтрации результатов выборки, то есть после итерации
Спасибки, всё понятно, очень нравятся твои видео 👌🤗
Здравствуйте, Ольга! Спасибо! Будем готовить ещё видео!
Круто
Я having юзал в уроках, но ты разжевал максимально хорошо
Спасибо!
12:00 меня на собесе этим вопросом завлили) я having наверное 1 раз в жизни юзал...
Спасибо больше что так всё разживал!!!! класс!!!!! ))))
Спасибо, полезно!
Спасибо ! Умничка !
Спасибо за видео. Но, чёрт возьми, "уэр", а не "вэрэ")
Прикольно, что я только несколько видео просмотрела. Но пару примеров ошибок нашла 😁
Важное уточнение насчёт Union-ов:
Union all не производит сортировку
Union же сначала производит сортировку двух таблиц и потом уже соединяет удаляя дубликаты
having это конечно фантазии собеседователя . Сумму еще в join можно посчитать или поверх еще Clients where
Полезно.
Спасибо!
Спасибо большое за урок! Хочу немного поспорить с тезисом, что Having не может использоваться без Group by. Насколько я знаю, Having применим к данным, над которыми проведена агрегация, а Group By - лишь один из агрегирующих операторов. Таким образом, Having можно применять сразу к оператору SUM без доп. условия группировки. По крайней мере, в PostgreSQL работает так. Спасибо.
Самые сложные вопросы это как проектировать БД, т.к я этим не занимался. Предложил два решения одной задачи. Есть таблица и в ней строка. Пользователь хочет вводит новые данные в поле. Вопрос как сохранить историю изменений. Я ответил что можно в этой же таблице создавать новые строки. Типо в строке записывается 1 строка основная, а следующие строки фиксируют изменения и являются наследниками. Выводится по дате последняя строка. Второй ответ это создать ещё таблицу связанную с первой таблицей и записывать туда сроки изменения, далее по дате выводить. Может тоже вопросы такие рассмотреть.
Владимир, здравствуйте!
Отличная задача. Хорошее решение. Второй способ, чаще всего, более предпочтительный, потому, что в исходной таблице не нарушается первичный ключ.
@@PrimeSoft В резюме не указывал что умею БД разрабатывать, но спрашивали. Ещё спрашивали про индексы, триггеры и т.д.
У меня нет айтишного образования, самостоятельно изучал sql. Всего прошел два собеседования с тестовыми заданиями. Задания были проще, так как в них не было таких подвохов. Впрочем, меня все равно не взяли, но полагаю, это связано с проблемами в коммуникабельности
Проще разницы между where и having и перечисления джойнов? А что вообще может быть проще?
Пишу не знал раньше чем отличается having от where, пишу чтоб вам было приятно
UNION можно объяснить еще и так: если есть запрос к одной таблице с разными условиями, то запрос "SELECT fld1.fld2, fld3 FROM t1 WHERE условие1 UNION SELECT fld1.fld2, fld3 FROM t1 WHERE условие2" эквивалентен "SELECT fld1.fld2, fld3 FROM t1 WHERE условие1 AND условие2" , UNION ALL бы задвоил одинаковые строки из разных условиий
Спасибо!🔥
Спасибо Вам за просмотр!
полезно. спасибо
Спасибо Вам за внимание!
20:00 еще self join, она же выборка из нескольких таблиц
А как же cross apply? Это же любимое соединение, когда как раз что-то нужно посчитать или вытащить year from date, а потом посчитанное использовать и в where, и в select для оптимизации. DML почему то вспомнил xml dml commands. Там вроде даже циклы можно писать по обходу вершин с постановкой значений колонок
DML команды проще запомнить как CRUD операции
1в1
может быть это и было актуально на 19-ый год, но на знании таких вопросов сейчас далеко не уедешь, слишком базовые. Вот это всё будет спрошено эйчаром на скриненге по телефону, а то и больше.
Super!
Thank you for watching! :)
хорошее видео, но я бы такие вопросы задавал только на должность стажера. даже джун это это должен знать по умолчанию
Эх, не могу найти свой комментарий старый.
Спасибо за Ваши уроки, в том числе с благодаря ним прошел собеседования, по SQL всего две задачи и пару вопросов было, вообщем ничего сложного как оказалось)
Спасибо Вам за Ваш комментарий! Очень приятно.
Респект!
Спасибо!
Спасибо!
Очень приятный голос ^_^
Спасибо! :)
Но при этом таблице можно придать псевдоним, и писать "т.поле"
Был на собеседование и меня тоже спрашивали про union)
Хороший стандартный вопрос :)
@@PrimeSoft Кстати меня взяли на работу. Осталось только уволиться с другой.
@@vladimirstepanov8289 какая хорошая новость! Поздравляем! Спасибо за то, что написали нам, поделились! Побольше таких новостей!
а можете сделать еще видео о том, что бывает на собеседованиях?