[00:31] YouTube-канал. Каждое второе предприятие генерировать данные. Клиент размещает оформляет заказ, кликает на объявление, завершает оплата, отмена подписки или получает доставку. Каждое действие создает еще одна запись в базе данных. Но [00:43] миллионы записей не делают этого автоматически создавать полезную информацию. настоящий Сложность заключается в повороте строк и столбцов. в ответы. Какой продукт был произведен Наибольший доход? Какие клиенты Покупали неоднократно? Какой регион находится? [00:55] Теряете продажи? Каков средний размер заказа? ценить? И какая именно кампания привела к этому? покупки? Именно здесь SQL играет свою роль. главная роль. Даже с Python, ИИ и облачными технологиями. платформы, каналы передачи данных и передовые инструменты бизнес-аналитики Среди инструментов, быстро развивающихся, SQL остается одним из них. [01:08] одной из наиболее широко используемых технологий в экосистема данных. SQL не ограничивается и к традиционным базам данных. Современный такие платформы, как Google, BigQuery, Блоки данных Snowflake и DataB продолжают оставаться актуальными. Предоставлять аналитику на основе SQL. Итак, SQL — это [01:21] Оно выживает, потому что решает проблему. по-прежнему крайне важно задавать структурированные вопросы. вопросы о структурированных данных. Так В этом занятии мы будем следовать этому. идеи. Мы увидим, как SQL извлекает данные. и фильтрует данные, преобразует тысячи [01:35] преобразует записи в значимые ключевые показатели эффективности, собирает использование нескольких таблиц с помощью объединений и В конечном итоге, это используется для формирования панелей мониторинга и отчетов. аналитики и бизнес-решения. Итак, набор команд. Вы будете понять, почему оно остается одним из [01:47] мир. Итак, в этом курсе мы будем понять, почему SQL остается актуальным несмотря на рост ИИ, Python и облачных технологий вычислительные и NoSQL технологии. Хорошо Посмотрите, как организованы реляционные базы данных. оперативной информации в таблицы, [02:00] строки, столбцы и взаимосвязи. Хорошо Понять, как выбирать, где и заказывать. информация. Мы также рассмотрим, как работает SQL. обрабатывает пропущенные значения, условные операторы. Вы узнаете, как работают агрегатные функции. и сгруппировать по преобразованию подробно [02:14] Поймите, как связанные таблицы объединяются для следовать процессу преобразования Преобразование бизнес-задач в аналитический SQL. Вы также поймете, почему индексирование и Эффективность запросов имеет значение при работе с базами данных. [02:26] расти. Мы рассмотрим, как SQL работает в облачной среде. склады, озерные хранилища, платформы бизнес-аналитики и Аналитические рабочие процессы. Посмотрите, как работает SQL. в конечном итоге поддерживает отчеты, панели мониторинга, Прежде чем мы перейдем к следующему пункту, позвольте мне поделиться [02:38] хотят развить более глубокие навыки, необходимые для трудоустройства в Анализ данных с помощью ИИ, ознакомьтесь с информацией здесь. программа по анализу данных с использованием искусственного интеллекта в сотрудничество с IIT Praatuk. Этот Программа охватывает SQL, Python, PowerBI. Tableau, машинное обучение, глубокое обучение [02:52] обучение, генеративный ИИ, облачный ИИ платформы и агенты искусственного интеллекта для работы с данными опыт работы с более чем 15 интегрированными системами искусственного интеллекта инструменты и работа в отрасли (11+) проекты, включая реальные проекты заявки и выпускной проект. [03:05] Мастер-класс по искусственному интеллекту от Тима Праерта на факультете и двухдневная стажировка в кампусе IIT. Научно-исследовательский парк Матас. Так что, если вы хотите выйти за рамки базового анализа данных и интеллектуальные агенты для генерации бизнеса Благодаря полученным знаниям, эта программа может помочь вам получить ценные сведения. [03:19] Позвольте задать вам короткий вопрос. Который SQL-запрос в основном используется для группировки строк. для агрегирования? Ваши варианты: А где B — группировка, C — объединение, а D — порядок. Раздел комментариев ниже. Теперь слово за нами. эксперты по обучению. Анализ данных — это [03:34] превратить во что-то полезное для принятия решений. информация о продажах, клиентах, маркетинг, кампании, финансы, инвентарь, продукция, сотрудники, веб-сайты или деловых операций. Но просто [03:47] автоматически создать значение. Он Ценность проявляется, когда данные помогают ответить на вопрос. Продавец хочет знать, почему это произошло. Традиционно аналитик может сначала... определить правильные наборы данных, очистить [04:00] информацию, важные расчеты сравните показатели за разные периоды. создать визуализацию, а затем интерпретировать её. Результаты. Генеративный ИИ добавляет еще один ручное принятие решений по каждому аналитическому вопросу в ходе работы пользователи могут все чаще [04:13] Опишите, что они хотят понять. Например, сравните выручку по различным показателям. каждый регион и определить три крупнейших спад. Искусственный интеллект может помочь это перевести. Преобразовать запрос в аналитические этапы. Это могло бы помощь в генерации SQL-кода или кода на Python. [04:25] результаты или создать начальную букву визуализация. PowerBI от Microsoft потому что это позволяет пользователям взаимодействовать с аналитические данные с помощью естественного языка запрос. Таким образом, сама аналитика не является исчезновение. Важное изменение заключается в следующем: [04:39] как аналитики взаимодействуют с аналитический процесс. Аналитик данных — это... становится более разговорным, более быстрым и все чаще используется искусственный интеллект для оказания помощи. Беседа повседневные бизнес-операции. Согласно Согласно прогнозу Маккензи о состоянии ИИ к 2025 году, 88% [04:53] Организации используют ИИ как минимум в одной из них. бизнес-функция. корпоративная сеть OpenAI Исследование показало, что 75% опрошенных Рабочие заявили, что ИИ улучшил скорость или качество их работы. Пользователи также Сообщается об экономии времени примерно на 40-60 минут. [05:06] в день с помощью ИИ-помощника. Это показывает что искусственный интеллект выходит за рамки экспериментов. в реальные рабочие процессы. Самый большой Сдвиг — это не просто ускорение вычислений. но более быстрое улучшение со стороны бизнеса От вопроса к аналитическому действию. Проще говоря [05:18] вопросы, позволяющие получить ценные выводы, гораздо больше быстро. Итак, чтобы понять разницу Очевидно, рассмотрим простой пример. повторить. Итак, чтобы понять разницу вопрос. Почему клиент ушёл? Увеличение в прошлом квартале? В традиционном [05:32] соответствующие таблицы клиентов. Затем клиентские записи, история подписок, справочная информация, использование продукта и Возможно, потребуется предоставить данные об отмене. объединенные. После этого необходимо обеспечить отток клиентов. рассчитано. Аналитик может сравнить [05:45] тип подписки, срок действия или использование. Перед этим может быть создано несколько диаграмм. Истинная причина становится ясна. Генеративный ИИ может помочь во многих случаях. эти этапы. Аналитик может обратиться к ИИ. сгенерировать SQL-запрос для вычислений [05:58] выстрелил. Искусственный интеллект мог бы создавать код на Python для сегментировать клиентов. Это могло бы объяснить закономерности в результатах или указывают на дополнительные области, заслуживающие изучения. аналитическая работа. Но помощь ИИ и Аналитическая корректность — это не одно и то же. [06:12] отток клиентов, когда клиент неактивен в течение 60 дней. Если расчет, сгенерированный искусственным интеллектом технически верно при ответе на вопрос Неправильный деловой вопрос. Чем лучше Рабочий процесс определяется человеком как проблема, а ИИ — как проблема. помощь в исполнении и работе с персоналом [06:27] обеспечивает сохранение анализа значимый. Чтобы понять истину Влияние генеративного ИИ: мы не должны Рассматривайте это как отдельный аналитический инструмент. инструмент. Мы можем внедрить ИИ повсеместно. полный жизненный цикл анализа данных. [06:39] Всё начинается со сбора данных. Информация может поступать из электронных таблиц. приложения, датчики, клиент платформы или облачные системы. Далее следует подготовка данных. Информация должна быть чистым, стандартизированным, объединенным и [06:52] начинать. Затем следуют данные разведки. тенденции, распределения, взаимосвязи, закономерности и необычные значения. В зависимости от что касается бизнес-проблемы, то они могут затем... создание расчетов, статистических моделей [07:05] или прогностические модели. После этого наступает визуализация. Полученные данные должны быть представлено в виде диаграмм, панелей мониторинга, отчеты или ключевые показатели эффективности. И наконец, следует Самый важный этап — это принятие решения. Генеративный ИИ может поддерживать каждый аспект [07:17] это путешествие. В процессе моделирования это может Оказание помощи в работе с SQL, Python или DAX. В течение Объясните, что изображено на диаграммах. И во время общение, оно может переводить технические результаты в более простом виде деловой язык. Таким образом, генеративный ИИ — это [07:29] слой, охватывающий весь жизненный цикл аналитики. цикл. Хорошая аналитика начинается с хорошей аналитики. данные. Реальные наборы данных встречаются редко. идеальный. Это могут быть дублирующиеся записи. Даты могут отображаться в разных форматах. Возможно, некоторые значения отсутствуют. Клиент [07:43] системы. Числовые столбцы могут случайно содержит текст. И их необходимо объединить, прежде чем можно будет проводить анализ. начинать. Именно здесь вступает в действие ETL. важный. ETL расшифровывается как extract (извлечение). преобразовать и загрузить. Во-первых, данные — это [07:57] информация преобразуется посредством очистка, фильтрация, изменение формы, объединение или стандартизация этого. Окончательно, Подготовленные данные загружаются в Генеративный ИИ может помочь во многих областях. эти виды деятельности. Например, [08:11] аналитик может запросить поиск дубликата Идентификатор клиента, стандартизация даты отсутствует. Искусственный интеллект может генерировать Python или SQL-код для выполнения этих операций. Это также может объяснить существующую трансформацию логическое мышление или предложение возможных способов очистки данных [08:24] шаги. Но искусственному интеллекту по-прежнему необходим контекст. Предположим, отсутствует значение выручки. чем незавершенная транзакция. автоматическая замена этого значения могла бы изменить анализ. Итак, принцип остается простым. Низкое качество данных плюс [08:37] мощный ИИ все еще может производить плохие результаты качественные выводы. Искусственный интеллект может ускорить понять, что на самом деле представляют собой эти данные. представляет. Итак, после того, как данные были получены подготовленные аналитики обычно переходят к Объяснительный анализ или ЭДА. Это сцена. [08:49] где аналитики начинают расследование набор данных перед тем, как делать окончательный вывод. Хочу узнать, в каком регионе это происходит. Какой продукт приносит наибольший доход? являются наивысшим порядковым значением, есть ли необычные транзакции, есть ли такие? [09:03] рентабельность? Традиционно аналитики Ответьте на эти вопросы, используя SQL и Python. электронные таблицы, статистика, панель мониторинга и другие аналитические инструменты. Генеративный ИИ разговорный. Вместо ручного Аналитик принимает решения по каждой операции. [09:16] можно было бы спросить: «Покажите мне самое важное». выявлять тенденции в этом наборе данных или определять необычные значения, которые следует исследовали или сравнили прибыль может помочь с расчетами, генерировать код, предложите дополнительные вопросы или [09:29] помочь объяснить результаты, которые позволяют аналитики изучат дополнительные возможности за меньшее время. Но интерпретация остается... важный. Если две переменные движутся вместе это не означает автоматически Это означает, что одно стало причиной другого. Необычный [09:42] также может представлять собой важный деловое мероприятие. Поэтому аналитик статистическая закономерность и значимый Анализ бизнеса. Искусственный интеллект увеличивает скорость. определяет, являются ли результаты полезный. Найти понимание — это лишь один из способов. [09:57] Трудность заключается в том, чтобы донести эту мысль до других. четко. Обычно руководитель предприятия так и поступает. отдельные записи о транзакциях. Вместо, Каков наш доход? Мы выше или ниже? ниже целевого показателя? Какой регион показывает лучшие результаты? [10:11] лучший? Какой продукт теряет популярность? Что Требуется немедленное внимание? вопросы. Диаграммы упрощают понимание закономерностей. идентифицировать. Ключевые показатели эффективности (KPI) выделяют важные моменты. меры. Панели мониторинга предоставляют несколько возможностей. аналитические взгляды в совокупности. Генеративный ИИ [10:24] добавляет еще один уровень, помогая объяснить что означают эти визуализации. Предполагать Панель управления позволяет отслеживать общий доход. При этом прибыль увеличивается, но в целом снижается. ИИ пояснение, указав на аналитика. к таким возможностям, как более высокие [10:36] скидки, увеличение затрат, ассортимент продукции, или региональных выступлений. ИИ также может язык. Но важно уметь хорошо рассказывать истории на основе данных. диаграммы не создаются автоматически Улучшенная панель управления. Аналитик по-прежнему [10:49] в большинстве случаев, какое сравнение следует провести Зрители видят, что является главным выводом? Какие действия следует предпринять? Искусственный интеллект может помочь Создайте и объясните визуализацию. Он За визуализацией. Как аналитический Проблемы становятся все более сложными, — говорит аналитик. [11:04] может потребоваться создание расчетов, данных модели или производственные модели. В бизнесе соединение таблиц, определение отношения, создание мер и Расчет бизнес-показателей. В наука о данных может включать в себя отбор [11:16] алгоритмы, обучающие модели и оценка производительности. Генеративный может попросить написать SQL-запрос, который рассчитывает ежемесячный рост выручки на регион или сгенерировать код Python для базовых операций модель оттока клиентов или объясните, что [11:30] Этот расчет выполняется. Искусственный интеллект может создавать первоначальное решение и объясните его. логика, лежащая в его основе. Это может уменьшить некоторые из технические сложности, связанные с Создание кода сильно отличается от его создания. надежная аналитическая модель. аналитик [11:43] Используются правильные переменные. Данные должно отражать реальное население. Данные Необходимо избегать утечек. соответствующий Необходимо выбрать метрику оценки и модель должна отвечать реальным бизнес-проблема. Искусственный интеллект может помочь аналитику [11:56] устранить необходимость понимать, как Модель работает. Поэтому аналитики могут тратить меньше. время, запоминание каждой детали синтаксиса и больше времени на принятие решения, следует ли Традиционный анализ часто начинается с понимание того, что произошло в прошлом. [12:10] увеличились запасы, сократились запасы, и в одном регионе Обычно хотят пойти дальше. Они хотят Спросите, что, скорее всего, произойдет дальше. Этот Именно здесь прогнозирование приобретает важное значение. Организации регулярно прогнозируют объемы продаж. [12:23] спрос, выручка, расходы, клиент поведение, требования к запасам и могут использоваться статистические модели, машины методы обучения, электронные таблицы функции или специализированное прогнозирование программное обеспечение. Генеративный ИИ может помочь в [12:35] этот процесс. Например, аналитик мог бы попросить ИИ сгенерировать код на некоторое время выявить предположения или предложить различные подходы к прогнозированию. ИИ может Также поддерживается сценарный анализ. Предполагать Ожидаемый спрос составляет 50 000 единиц. [12:48] Руководство может спросить: «Что произойдет, если...?» «Спрос увеличивается на 15%». Или: «Как бы...» Требования к запасам меняются в зависимости от спроса. увеличились сроки доставки, в то время как подробнее расскажите об этих сценариях. быстро. Но прогнозы — это лишь оценки. [13:01] будущие результаты. Изменения цен, компенсационная деятельность, экономическая поведение и неожиданные события могут быть связаны друг с другом. определяет, насколько высоким должен быть уровень доверия. включено в этот прогноз. Итак, где же мы находимся? [13:15] эти аналитические возможности, основанные на искусственном интеллекте Появляется сегодня? Одна из основных областей — позволяет пользователям взаимодействовать с аналитическими инструментами. данные с помощью естественного языка, запрос задавать вопросы, анализировать визуальные материалы и создавать резюме. Искусственный интеллект также оказывает помощь. [13:28] Рабочие процессы в области анализа данных. Microsoft Fabric Copilot может помочь в анализе. понимание данных в блокноте среды. генеративный общего назначения запросы, код на Python, электронные таблицы анализ, документация, пояснения, [13:43] и повторяющаяся аналитическая задача. Эти возможности могут применяться в различных областях. практически все бизнес-функции. А Маркетинговый аналитик может сравнить кампанию. производительность. Финансовый аналитик мог бы расследовать необычные изменения в расходах. А [13:55] производительность. Оперативная группа может Проанализировать запасы и спрос. Он Важный момент заключается в том, что генеративный ИИ — это не создавая совершенно отдельный мир все чаще интегрируются в инструменты. и рабочие процессы, которые аналитики уже используют. Он [14:09] от организации к другим, но в целом Процесс остается аналогичным. бизнес вопрос, данные, помощь ИИ, проверка и принятие решения. Искусственный интеллект ускоряет объективно, и доказательства по-прежнему принять окончательное решение. Ну и что [14:22] Как обычно выглядят? Вряд ли это будет анализировать данные об обучении и просить ИИ делать все. Вместо этого роль аналитика заключается в следующем: вероятно, переместится выше по иерархии принятия решений процесс. Искусственный интеллект может все чаще оказывать помощь в [14:35] повторяющаяся аналитическая работа, такая как генерация запросов, создание кода, информация, сокращая первоначальный визуализация и выявление потенциала время сосредоточиться на таких вопросах, как: является ли Надежен ли этот набор данных? Мы проводим измерения [14:49] Правильный KPI? Почему наблюдается такая закономерность? что происходит и какая информация может быть отсутствующий? Или это, повторяю, или это Имеет ли этот вывод смысл с точки зрения бизнеса? Какое решение следует принять на самом деле? Это не просто вопросы, касающиеся программного обеспечения. [15:02] Это вопросы, требующие аналитического мышления. И это различие важно. Так как Инструменты искусственного интеллекта становятся все более совершенными, и это происходит очень просто. Знание того, как работать с программным обеспечением, может быть недостаточным. Этого будет достаточно. Аналитики будут все чаще необходимо понимать бизнес, структурировать данные. [15:14] вопросы, оценивать доказательства, выявлять вводящие в заблуждение выводы и общение сочетает в себе четыре сильные стороны. Бизнес понимание плюс навыки работы с данными плюс аналитическое мышление и возможности искусственного интеллекта. [15:26] более разговорный и более доступный. Но люди по-прежнему обеспечивают контекст, суждение, ответственность и принятие решений. И это сочетание надежный и действенный бизнес идеи. [15:39] Меня зовут Никам. Я был связан с... просто и я был в этом В этой отрасли мы работаем уже более 11 лет. я работали в сфере корпоративного обучения и консультация. Пока что я взял... э-э... прожили вместе более 55 лет. [15:53] организации преимущественно для корпоративных тренинги. Я провожу корпоративные тренинги по следующим темам: тренинги. Я провожу корпоративные тренинги по следующим темам: Приложения MS Office 365, офисные приложения навыки повышения производительности в основном и с что я сам перешел на пятилетний срок [16:05] за несколько лет до этого я перешел в PowerBI и Tableau. наука о данных. Это короткий Вступление, информация обо мне, и вот мы здесь. вместе для сбора данных манипуляции с использованием SQL. Первое — первое Здесь мы познакомимся с SQL и [16:19] тогда мы узнаем, что у нас есть. Правильный курс. Итак, в рамках данного курса... что мы узнаем за весь период Конечно, мы продолжим и будем учиться. Мы также рассмотрим, что такое типы данных. Что такое данные? Что такое база данных? Мы должны [16:32] Давайте разберемся, что здесь происходит. Здесь будет контекст базы данных, плюс мы будем понять еще несколько концепций СУБД, такие как нормализация и другие СУБД, такие как нормализация и другие однако, навыки эффективности в рамках этого [16:46] Конечно, мы также собираемся изучить... выбрать запросы, что это значит в SQL? Это можно сделать с помощью SQL. Что такое SQL? Зачем мы это используем? И мы научимся всё и вся с самого начала как извлечь данные о том, как создать [17:00] как извлечь данные о том, как создать база данных до тех пор, пока не заработает Windows. Итак, мы рассмотрим весь SQL-код. на следующих занятиях. Сначала, прежде чем мы Просто углубитесь в то, что такое SQL, вот что там есть. Вот несколько терминов, которые нам необходимо знать. [17:14] Разойтись, чтобы все оказались на месте. На одной странице. Итак, давайте рассмотрим некоторые из них. И снова, и прежде всего мы должны понять Что такое база данных? Мы также должны Что такое база данных? Мы также должны Понять, зачем это нам нужно. Хорошо. Что [17:27] Соответствуют ли данные имеющейся информации? Все верно. Сборник необработанных фактов информация. Набор информации, специфичной для формат набора информации. В общем, вот так. мы говорим, что данные — это информация. Правильный. Итак, если я продолжу [17:44] информация. Правильный. Итак, если я продолжу и напишите здесь кое-что [17:59] числа. Там есть некоторый текст. Но делает ли Это вообще имеет какой-то смысл? Итак, что же такое данные? В очень простыми словами, очень-очень простыми словами. слова, данные — это структурированная информация сохранено в надлежащем формате. Сохранено в правильный формат. Формат может быть любым. [18:15] правильный формат. Формат может быть любым. В этом формате может быть CSV. Этот формат Это может быть текстовый файл, но он должен быть в каком-либо формате. и чтобы контекст тоже был ясен. Хорошо. Это может быть и Excel. Это может быть в Эм, и JSON тоже. Это может быть что угодно. Так что вот так. [18:31] Существует множество форматов, в которых мы можем продолжить работу. и открытый. Его можно сохранить в нескольких местах. Там разные форматы. Вот это да! простая структура или определение данные. Что же такое база данных? Данные относятся к набору фактов, цифр или [18:46] символы. Его можно обработать и Проведен анализ с целью извлечения полезной информации. Проведен анализ с целью извлечения полезной информации. Итак, если это данные, и мы... поскольку мы сохраняем эти данные в надлежащий структурированный формат. Это может быть что угодно. [18:58] Текстовый CSV-файл, файл Excel или что-то подобное? сохранено в таблице все, что там находится под любым объектом. Итак, что же подразумевается под этим? база данных? Что такое база данных и зачем она нужна? база данных? Что такое база данных и зачем она нужна? Нам это нужно? Данные хранятся в нескольких экземплярах. [19:13] система, в которой хранятся данные о количестве хранилище данных, где хранятся данные организован и может быть использован в качестве справочного материала, когда это необходимо. необходимость, где требуется сбор структурированных данных необходимость, где требуется сбор структурированных данных хранится. Хорошо. Итак, мы говорим здесь [19:28] собрано. По сути, мы говорим что внутри имеется надлежащая основа Мы собираемся продолжить и, э-э, сэкономить. наш набор данных прав. Итак, давайте разберемся [19:41] по одному. Здесь представлены данные в сжатом виде. Это Это может быть часть, это могут быть цифры. Он может любой другой формой информации изображение текст значок картинки что угодно. Верно? Обычно они имеют следующую структуру: определенным способом или хранился даже в течение определенного времени. [19:56] конкретная цель. Вы не можете просто уйти. заранее и сохранить любую случайную информацию. вместе. Его следует хранить в течение также для конкретной цели. Теперь эти данные Здесь, когда все будет в одном файле, давайте... Допустим, здесь есть один CSV-файл, тогда мы... [20:09] Хорошо, что этот CSV-файл сохранен у нас. система находится в какой-то папке там. Даже сейчас, если В вашей системе имеется несколько папок. У всех вас несколько файлов. Возможно, это файлы Word и PowerPoint. PDF-файлы, файлы Excel — все они сохранены для [20:24] определённая цель в определённой папке Да, в общем, то, что вы здесь делаете... Ваша собственная система такова: вперед, вы! управляйте им, организуйте его и соответственно. Время от времени вы его меняете, и вы вносите изменения. Если обновление работает правильно, всё будет в порядке. [20:40] добавление дополнительных данных по мере необходимости в аналогичном смысле. Здесь все это система или папка, которая у вас есть В вашей системе вы можете назвать это Также это можно назвать базой данных. Также база данных. Почему? Потому что база данных. [20:53] Здесь представлена ​​лишь структурированная подборка данные, которые обычно хранятся на компьютер, чтобы мы могли получить к нему доступ и управлять им. и легко обновлять его. Таким образом, это становится база данных. Однако в рамках база данных, если мы продолжим обращаться к нашей [21:09] собственные системы, такие как база данных, потому что это соответствует данному определению, легко ли это сделать? Найдите два связанных файла, если... Они находятся в совершенно разных состояниях. приводы? Мы знаем эту логику, которая объясняет, как эти два файла связаны друг с другом [21:23] другой. Например, ваши расчетные листы по зарплате. и ваши налоговые декларации — они связаны. находиться в двух разных папках, двух Подробности об инвестициях приведены в другом документе. папка. ваш уровень заработной платы в другом [21:36] папка. Но вы ведь знаете, что эти две вещи связаны друг с другом две вещи связаны друг с другом логично. Так что это не так уж и просто. управляемый бывший организованный потому что вся логика Это сейчас у нас на уме. Хорошо, это так. [21:51] почему у нас существует несколько разных типов Система управления базами данных. В базе данных системы управления, вот они: системы, специально разработанные именно для системы, специально разработанные именно для управлять, организовывать и собирать данные. [22:06] там и для обеспечения возможности использования несколькими пользователями. легко получить к нему доступ, даже не вмешиваться в эти данные. Итак, если мы модифицировать, если кто-то другой вносит изменения в файл к данным могут получить доступ несколько пользователей. извлечь данные тоже. Плюс в то время как [22:20] изменение и обновление данных конкретная система управления данными делает эти данные согласуются с их данными проверено должным образом и плюс правильно Данные загружаются. Итак, всё это это можно сделать в рамках этого управления [22:35] там есть система. Итак, определение базы данных вам Все они абсолютно верны. Так что же это такое? СУБД? система управления, которая у них есть созданный, в котором они сохраняют это созданный, в котором они сохраняют это этот набор данных и работа над ним продолжается [22:48] извлечение, модификация, обновление данных установлен там. в базе данных. Теперь мы согласны с тем, что Имеется несколько наборов данных. Сделанный. Сейчас Проблема здесь в том, зачем нам это нужно. Здесь система баз данных? Всякий раз, когда мы творим [23:03] В системе баз данных есть несколько моментов, которые следует учитывать. Это здесь очень-очень важно. Так Например, верно? Теперь у вас есть файлы. в вашем организме, верно? Допустим, вы У вас в офисе два файла. ноутбук. Один предназначен для сотрудников, а другой — для сотрудников. [23:17] отдельные файлы Excel, Excel рабочие тетради. Итак, если я вас спрошу, то это может Давай, достань мне маркетинговые материалы. личные данные менеджера, как вы будете действовать? Найти? Итак, я понимаю вопрос. снова. Допустим, у вас есть два файла Excel. [23:33] простыни. Хорошо. На вашей системе прямо сейчас Допустим, здесь две рабочие книги Excel. Один есть данные о сотрудниках, и у одного из них есть Подробная информация об отделе. А если я вас спрошу Вот, можешь взять меня? личная информация личная информация, например [23:48] личная информация личная информация, например Здесь представлена ​​личная информация менеджера по маркетингу. Как вы это получите? Что нам нужно сделать потому что нам нужно разобраться в этом. Выясните, кто этот человек. и данные о сотрудниках, давайте представим. [24:02] Итак, у нас есть личный сотрудник. подробные данные предоставляются отдельно только с Идентификационный номер сотрудника, поэтому нам нужно продолжить. Откройте две электронные таблицы Excel, лежащие перед нами. и нам сначала нужно выяснить, есть ли какие-либо Подробности отдела, мы перейдем к делу. [24:14] отфильтровать любого менеджера или любое другое место, где он находится. Менеджер по маркетингу, мы должны двигаться дальше. и отфильтровать это после того, как мы это отфильтруем Человек выходит, мы проверяем удостоверение сотрудника. Как только у нас появится идентификационный номер сотрудника, мы вернуться к данным сотрудника, которые мы отфильтровали [24:27] вычитаем идентификатор сотрудника, и затем получаем Подробности оттуда. Так что либо мы это сделаем вручную, или мы используем VLOOKUP, или что-нибудь еще. Нам необходимо объединить оба проекта. Сдвинуть столы вместе или хотя бы открыть их. вместе, поскольку мы не можем объединить данные. [24:40] огромен. Хорошо. Так что вам нужно двигаться дальше. И речь идёт о рабочей книге Excel. прямо сейчас. Так что ничего подобного не произойдет случаться. Мы находимся в рабочих книгах Excel. прямо сейчас на экзамене. Верно? Итак, это Как этого не происходит. Вот почему они [24:53] придумали это управление файлами Система не работает. Хорошо. с ним Здесь есть два очень важных момента. Сначала нужно получить данные. Главное ограничение здесь заключается в том, что получение набора данных, если я этого захочу. [25:08] Давайте, получите данные. очень-очень сложно, если мы будем спасать Перенести данные всей организации в Excel. файлы только на каком-либо общем диске файлы только на каком-либо общем диске тогда мы понятия не имели, как люди, которые [25:21] получает информацию о том, кто обновляет набор данных. Сколько человек обновляют данные? правильно установить, поэтому в этом случае у нас есть Слишком много ограничений. Первый пункт заключается в следующем: Нет никакой безопасности, хорошо, потому что это так. Все файлы Excel находятся на общем диске. [25:35] существуют ли финансовые средства для маркетинга для Цифровой маркетинг для HR-специалистов. Итак, во-первых Не вся система безопасности присутствует, и если новый Присоединение: присоединяется, если присоединяется новый человек. организации они возвращаются и обновляют свои в их кадровом файле находится кто-то [25:52] делать это вручную. Итак, когда это делается вручную обновим этот набор данных. для этого. Итак, если их несколько там есть люди, есть шансы, что мы у них будет несколько дубликатов сверху набор данных. Если я сохраняю идентификационный номер сотрудника, [26:06] имя сотрудника, фамилия сотрудника, Номер телефона сотрудника, адрес электронной почты. Так что, если я иметь личные данные сотрудников, которые будут тоже там быть. Если у меня есть сотрудник, э-э мне нужно сохранить рабочие детали контактные данные также указаны там на случай, если мы [26:19] Нужно связаться с ними. Так Таким образом, будет много дубликатов. там есть данные, и вот так будет Здесь действуют дополнительные ограничения. Вот почему они разработали СУБД, то есть базу данных. система управления. Это было совершенно [26:33] системы другого типа. Внутри В системе каждая таблица сохранялась как объект. Как бы это ни называлось, каждые данные сохранялись как объект, называемый таблицей, и эта таблица [26:45] Была создана с использованием строк и столбцов. Теперь ваша очередь Наверное, ты думаешь: "Почему ты?" Вот как выглядит таблица. Я в этом уверен. Давайте узнаем об этом немного больше. То, что мы называем таблицей, технически является Данные называются табличной структурой, которая [27:01] мы сохраняем это в табличной структуре. только если в нем есть и строки, и столбцы. только если в нем есть и строки, и столбцы. Кроме того, первый ряд всегда будет называться в качестве заголовка. Первый ряд должен быть заголовок. И заголовок каждой колонки должен [27:15] имеют свой собственный тип данных. Если это число, это обязательно должно быть число. Если это дата, это должна быть дата или дата начала до конца ряда. И когда мы читаем этот набор данных или эта таблица здесь, мы Всегда буду читать его от начала до конца. [27:29] Верно? Итак, это и есть СУБД. Теперь у СУБД осталась только одна проблема. Хорошо? Это Устранены проблемы с проверкой данных. Это привело к утрате согласованности данных. проблемы, потому что теперь у нас есть безопасность потому что мы обеспечиваем безопасность на уровне рядов. [27:45] там. Мы закрепляем это на столе. там на уровне. Они хороши. Мы можем дать доступ к тем людям, к которым мы хотим. Что Хорошо разбирался в СУБД. Однако у них были одна огромная проблема заключается в этих таблицах. Это были отдельные таблицы. Они не были [27:59] вообще не связаны друг с другом. Итак, если Внутри сохранена одна таблица. объект, я могу приступить к извлечению таблицы. оттуда. Однако, я... это не так. связаны друг с другом. Итак, сотрудник Таблица не связана с отделом. [28:13] Отдел не связан с клиентом. или таблицу поставщиков. Общего нет. или таблицу поставщиков. Общего нет. Между ними вообще нет никаких ключевых моментов. Ужасно. Итак, когда Они столкнулись с этой проблемой здесь, они возникли с реляционной базой данных. Они поднялись [28:25] с реляционной базой данных. Теперь они поняли, что нужно посмотреть, если мы Необходима таблица. Хорошо, нам нужно Давайте соединим эти таблицы следующим образом. Сохранение только структуры таблицы не является работает на нас. Поскольку базы данных [28:39] Мы масштабируемся с каждым днем, нам нужно двигаться вперед. и связать несколько подробных таблиц друг с другом. Но как же нам установить связь? Они вместе? Они идут дальше и Они связывают их на основе общих принципов. столбцы. Так что, если бы у нас был отдел [28:53] таблица, допустим, если бы у нас был отдел вот такая таблица, Если бы у нас был такой отделочный стол, мы обязательно продвинемся вперед мы обязательно продвинемся вперед и добавить идентификатор сотрудника. Итак, этот идентификатор сотрудника [29:07] будет выступать в качестве ключа или общего столбца. Если Я добавил сюда идентификационный номер сотрудника, который... Я добавил сюда идентификационный номер сотрудника, который... Идентификационный номер сотрудника — скажем, 101. Возможно, идентификационный номер сотрудника этого человека — [указать номер сотрудника]. 103 106 [29:21] и точно так же хорошо, так что мы можем продолжить. Нам нужно обновить Идентификационный номер сотрудника находится здесь, после этого. Если это сейчас, то с чем мы это связываем? легко связать его с сотрудником почему таблица? Потому что таблица сотрудников тоже есть. [29:35] Теперь у меня будет идентификационный номер сотрудника. становится проще Теперь мне не нужно искать и класть. Так Это реляционная база данных. В реляционная база данных, хорошо, начнём. далее и соедините несколько таблиц [29:48] на основе общих столбцов. Если распространенный Есть ли там хорошая колонка? Если его там нет мы продолжаем и создаём установление связей путем создания ключей. Верно? Таким образом, это становится реляционным. база данных. В настоящее время эти базы данных... [30:05] Это совершенно разные типы. Один из типов, представленных здесь, — это MySQL. Хорошо, мы Мы собираемся учиться работать с MySQL. Посмотрим. прямо сейчас. Это называется реляционная база данных, где у нас есть общие колонны, и мы их соединяем. [30:20] вместе. Итак, давайте рассмотрим различные типы существующие в настоящее время базы данных. Настоящее время Здесь, как и в реляционных базах данных, это может Сохраняйте только дату, цифры и текст. Это [30:32] это. Если данные находятся в пределах этого диапазона База данных может легко сохранить это в табличном виде. структура. Верно? Итак, сколько существует типов? базы данных, которые у нас здесь есть. Сначала у нас есть СУБД. Теперь у нас есть реляционная база данных. [30:45] здесь. Это первый раз, когда я здесь. Затем У нас здесь база данных NoSQL. А затем здесь Это графовая база данных. Затем у нас есть централизованная база данных и распределенная база данных. Вы должны быть [31:00] Третий год здесь. Но я пишу первой. и второй прямо здесь снова, потому что и второй прямо здесь снова, потому что Это базы данных различных типов. Это базы данных различных типов. Здесь представлены типы, основанные на различных базовых значениях. [31:13] Итак, реляционные, NoSQL и графовые базы данных. здесь. Эти три базы данных: дифференцированный исходя из типа данных, которые мы видим. внутри него. Они основаны на типе данные, которые мы видим внутри него. [31:30] И эти данные здесь основаны на эти распределенные централизованные это в зависимости от местоположения это основано на местоположение данных местоположение базы данных Это зависит от местоположения, или, можно сказать, тип местоположения. [31:47] Итак, давайте разберемся, что это такое. реляционная база данных, что такое NoSQL и график. Итак, как я только что объяснил... Вы в порядке? Что такое реляционная база данных? Это сборник всех объекты данных объекты, которые мы не вызываем [32:00] Эти таблицы, как мы говорим, это объекты данных, которые структурированы в столы, хорошо, они соединены между собой. с предопределенными отношениями что такое здесь заданы предопределенные отношения столбцы [32:12] их также называют столбцами записей. здесь они называются атрибутами, и каждый из них Атрибут содержит только один тип данных. Я уже видел это в таблице. Structured Plus мы создадим ключи [32:25] и общие колонны для установления это наиболее распространенный тип отношений Тип базы данных здесь, и это следующие базы данных. Несколько примеров. Я специалист по SQL. Мой пост по SQL. SQL 2. [32:37] а теперь вот это, а вот это NoSQL база данных что такое база данных NoSQL каждый эмм, с тех пор как появились социальные сети, ладно, после эмм, с тех пор как появились социальные сети, ладно, после В 2010 году масштабы данных увеличились. [32:50] что они начали коллекционировать Эда. Хорошо, Сейчас масштабы этого проекта выросли до миллиардов. Только в тот раз. Так у них есть эти сайты социальных сетей набор данных, включающий не только ваш адрес электронной почты, пароли и информация о группе, их значение [33:05] пароли и информация о группе, их значение не только числа, буквенно-цифровые обозначения, даты и текст. Теперь у них есть и ваши изображения. У них есть подкаст, несколько аудиоклипов, У них есть подкаст, несколько аудиоклипов, видео и комментарии, блоги, статьи, [33:19] В сети есть целые веб-страницы. Итак, теперь мы имеют нетабличные базы данных. Дело в том, что что мы можем создать базы данных, которые не могут быть созданы хранится там просто в таблице. Поэтому они [33:31] Здесь не используется SQL, и вот эти Теперь хранятся в формате JSON-документов. Не просто Документы в формате JSON. Это JavaScript. Документы с объектной нотацией. Они есть написано по-другому. Они запрограммированы по-разному. Если вы посмотрите на них, [33:45] Окей, похоже, это фигурные скобки и Очень много запятых и двоеточий. Но Геральные данные и огромные массивы данных могут быть сэкономлено в очень-очень маленькой сумме. Так Здесь находятся JSON-документы, хорошо, они есть. классифицированы по нескольким категориям, таким как [33:59] модели данных, ключевые значения документов, широкий столбцовые и графовые базы данных. столбцовые и графовые базы данных. NoSQL-базы данных легко масштабируются. масштабируемый. Теперь, если есть хоть какое-то право на использование приложений социальных сетей [34:13] Я напишу обозначение объекта JavaScript. Здесь, внизу, у нас как в Excel. файлы, вот я вам покажу файл. Это объектная нотация JavaScript. Это объектная нотация JavaScript. файл, это как Excel, CSV, JSON, хорошо, goj [34:28] Возможно, вы тоже слышали о JSON. это своего рода расширения формат, в котором он написан, очень разнообразен. Точки с запятой и буква «u» очень легко определить. внутри него находится. Я покажу вам пример. позже. Таким образом, эта база данных NoSQL может сохранять [34:44] изображения в пикселях. Оно может определить, что слишком. Верно? Примеры баз данных NoSQL Вот MongoDB, Amazon, Dynamo, Apache, э-э, HBase. Если вы слышали о Hadoop также связан с Только это. Итак, когда у вас есть эти [34:58] Это данные такого рода, и мы хотим их сохранить. Мы не сохраняем это в Oracle или MySQL. Переходим к базам данных NoSQL. Затем мы получили графовую базу данных. [35:10] Здесь вы всегда сможете понять, как работает база данных Graph. Вы заходите на LinkedIn, и вы там... Просмотр профиля человека приводит к этому. скажу вам, что... кто бы там ни был Этот профиль также посетил эти сайты. профили или это взаимные обязательства [35:24] Это ваш второй уровень связи. Это ваш уровень "три плюс". вы когда-нибудь замечали это на связи? Как вы думаете, как LinkedIn экономит средства? набор данных, содержащий их, так что, допустим, если Это вы, хорошо? У вас есть, скажем так... [35:38] Там тысячи соединений. Это ты. Теперь у вас здесь тысячи связей. Как же все эти связи здесь взаимодействуют? Они знают, какой из них падает на... второй уровень, первый уровень, э-э, второй уровень или первый уровень. Если что-то и новое — это [35:53] Скоро появится новый человек, приедет новый. вверх. Они также знают, что они связаны друг с другом. Они это знают. Кем бы ни был следующий человек, это будет новый человек. В ближайшее время у этого человека есть общие интересы. связи с вами. Это означает следующее: [36:05] связи с вами. Это означает следующее: Ваш круг общения совпадает с вашим. сеть снова, э-э, первый уровень, второй уровень. Можно ли сохранить это в... в... Тип файла — Excel? Хорошо. А если вы [36:22] Попробуйте это сделать, их будет много. избыточность, повторение каждый раз, потому что если вы спасаете сеть хотя бы одного человека Возможно ли спасти хотя бы одного человека? сеть? Сколько человек там находится? LinkedIn, и все они связаны с... [36:35] друг друга? Поэтому сохраняйте это любым способом. Формат очень сложен и Формат очень сложен и Конечно, это огромный массив данных. Так Они используют облачные базы данных. Эта база данных графов, хорошо, они используют... [36:49] Графические структуры, имеющие узлы, в порядке. атрибуты ребер родительский и дочерний отношения и так далее, вот как они идут вперед, и это просто график. базу данных, с которой мы работать не будем мы собираемся работать над СУБД мы [37:02] Собираюсь работать с реляционными базами данных. Совершенно верно, мы будем над этим работать. и мы будем учиться на MySQL. Теперь давайте поговорим о том, что такое централизованность. А что такое децентрализация? Что же такое децентрализация? Централизованная база данных существует в том виде, в каком она есть. [37:17] Централизованная база данных существует в том виде, в каком она есть. сказал, что место хранения изменилось. поддерживается в одном месте, например, мэйнфрейм. Таким образом, существует те, кто не имеет технического образования, это огромный компьютер, ладно, это что-то вроде [37:31] физический сервер со всем оборудованием связано с этим и находится где-то теперь все находятся в одном месте кто работает в организации, а кто нет нужно находиться именно в этом месте, хорошо? с помощью интернета здесь они могут [37:44] Давай, получи доступ к чему угодно. нужные им данные отсюда, хорошо? Поэтому это называется централизованной базой данных. Как вы думаете, там что-нибудь будет? [37:56] трудности или, э-э, некоторые ограничения здесь. Есть преимущества, очевидные преимущества. Это будет недорого и просто. обслуживание. Но каковы ограничения? [38:13] Да, мы храним данные здесь. Все данные хранятся здесь, в одном месте. Да, если нам нужно масштабировать данные, мы... необходимо убедиться, что наше оборудование может необходимо убедиться, что наше оборудование может Разберитесь с этим. Правильный. Оба могут знать, если я [38:25] У меня один компьютер, я размещу его в одном месте. географическое местоположение неверно. географическое местоположение неверно. Да, это будет дорого, если так случится. поврежден или замедлена вся организации будут похожи на сервер [38:38] Сегодня мы не можем это сделать. Да, это работает, и обеспечить безопасность данных проще. Также проще управлять данными, потому что Это всего лишь одно место, но если Здесь или на сервере может произойти что угодно. замедляется, хорошо, мы собираемся встретиться лицом к лицу [38:52] Эта трудность довольно часто возникает, если данные Масштабирование происходит быстро, верно? Если есть Слишком много людей пытаются получить доступ к У меня та же проблема, и оборудование не работает. разработан для такого масштаба или для этого Если будет много людей одновременно, возникнут задержки. [39:06] Загрузка данных может занять больше времени. слишком. А если оно будет повреждено, то наш Резервное копирование по-прежнему находится в этом главном фрейме. Так что всё состоится. Итак, мы... мы... Рискуя потерять это, но мы всегда иметь резервную копию. Хорошо. Итак, это оно. [39:20] централизованная база данных и большая часть большая часть организации будет централизованная база данных только. Вся организация, которую мы Обычно они работают с централизованными системами. только база данных, потому что это легко [39:33] только база данных, потому что это легко доступ, обработка и масштабирование. Теперь после распределенная база данных. Что такое Распределенная база данных здесь? Хорошо, это так. коллекция. Это единое набор связанных баз данных, которые [39:47] физически рассредоточены по нескольким расположение. Итак, здесь говорится, что они распространили базу данных по множественные физически множественные все еще подключен к компьютеру сеть, и у них есть базы данных. [40:02] внутри. У них будут базы данных. сохранено внутри него, и поскольку это СУБД другой. А что произойдет, когда база данных будет... Вот так? Теперь, когда у нас есть пользователи, Здесь, когда у нас здесь находятся пользователи, они [40:16] все еще могут связаться с набор данных. Хорошо. Используя серверы, Но да, конечно, они будут. распределяется в соответствии с их потребностями в соответствии с требованиями разрешения доступа и должностных обязанностей. Они могут двигаться дальше. [40:30] и получить доступ к данным соответствующим образом. Сейчас Каковы предельные значения? Что это такое? Какие преимущества или ограничения вы считаете? Вы там будете? Сетевая зависимость. Это был в высокие затраты на техническое обслуживание. Это верно. [40:42] Возможно, это будет быстрее. Да, безопасность данных — это проблема. Необходимо поддерживать его на этом уровне. все уровни, и теперь вам нужен больший команда для решения всех физических вопросов и мест тоже. Но если есть огромная данные, они не могут сохранить их в одном месте. [40:55] место. Они распределят его по всей стране. местоположения. Google этим пользуется. Google использует распределенная система на основе данных другой стиль базы данных. Да. И Масштабирование проще. что означает масштабирование им не нужно складывать, продолжайте складывать [41:11] Слишком много оборудования или систем — вот что это может привести. проще, так что теперь мы здесь это понимаем. базы данных — вот с чем мы будем работать. Здесь мы будем работать с СУБД. Здесь мы будем работать с СУБД. СУБД (Reading Database Rebms) пользуется наибольшим спросом, потому что... [41:26] большая часть данных организаций — это... Они хотят проанализировать дату. Они хотят проанализировать дату. Числа и текст, поэтому СУБД — лучший вариант, верно? И к тому же это простой мэйнфрейм. компьютер, который мы можем подключить к локальному [41:39] интернет, и мы можем к нему подключиться легко. Поэтому это самый востребованный вариант. но да, с учетом необходимости в системы социальных сетей и слишком много различные типы наборов данных, которые они могут Необходимо масштабировать систему до NoSQL или облачной платформы. [41:55] база данных. Очень хороший. Итак, вопрос Данная система характеризуется следующими особенностями: имеющие логически структурированные данные взаимосвязанные физически распределенные на нескольких участках внутри компьютера сеть. Как здесь указано, распространяется. [42:08] Хорошо, это тот ключ, который нам нужен. Так Ответ будет C. Теперь давайте продолжим. и разбираться в SQL. Что такое SQL? Мы подробно рассмотрим, что такое СУБД и Мы подробно рассмотрим, что такое СУБД и Это СУБД? Итак, начнём с SQL. Так [42:23] Давайте разберем этот SQL-запрос. Первый SQL — это язык программирования. Что такое SQL — это язык программирования. Что такое язык? Таким образом, любой язык. Итак, вот это что-нибудь. Что мы понимаем под этим? сейчас? А теперь представьте, что это язык. [42:38] посредством которого мы задаём вопрос. С Это язык, у него должны быть свои особенности. правила и грамматика. Верно? Вот почему Это сооружение. Так что у него будет свой собственные правила и положения, которым мы следуем во время разговора друг с другом. Мы идём [42:51] и мы соблюдаем эти правила, пока Разговаривая об этом, как бы вы это сделали? Вам нужно продолжать и оставить это с собой. ты. Верно? Таким образом, структурированный запрос язык. Таким образом, это язык запросов, язык, созданный для того, чтобы задавать вопросы [43:05] вопросы к базе данных и получить нужные вам данные или если Если вы хотите сохранить набор данных, то... а дальше вы просто задаете вопросы. к системе там. Помните, что это не язык программирования. Что такое [43:17] язык программирования? Мы создаём Там что-то новое. Мы программируем Там что-то новое. Поэтому мы не спрашиваем или создавая что-то новое в мире, или Вся структура чего-либо. Нет, а Структура уже существует. Мы [43:29] просто взять и достать Вот и все данные оттуда. Хорошо. Так В данном случае под структурированным языком запросов подразумевается мы используют язык, который имеет, который имеет свои собственные правила, положения и лексику и используя тот язык, на котором мы общаемся [43:43] машина и задавая вопросы это. Вот и все. Это SQL — структурированный язык программирования. язык запросов. Да, совершенно верно. Теперь давайте разберемся, что может делать SQL. делать. SQL может выполнять в нашем случае, если мы скажем... Здесь оно может приступить к выполнению [44:00] операции, такие как создание, чтение, обновление и удалить. Это те операции, которые мы проводим. Может выполняться с использованием SQL. Кто мы такие Здесь мы можем создать базу данных. внутри аппаратной структуры, которую мы Имеются в наличии. Мы можем создать [44:14] стол. Мы можем вставить значения внутрь. это. Мы можем это сделать, если вы захотите обновить его. Если вы хотите как-то это изменить, вы Хотите удалить структуру художника или... строка, или, может быть, я хочу что-то обновить. набор данных внутри него. Теперь, когда мы [44:27] изменение и сохранение данных внутри него. Как только это будет сделано, дальше будет моя часть работы. Другой данные и анализ этих данных этим человеком Я буду изучать эти данные. Итак, в то время как снова прочитав данные, мы Необходимо выполнить несколько шагов. Итак, вот это [44:42] Здесь находится операция CRUD, и вот как мы можем это сделать. Ознакомиться с данными можно здесь. Итак, это они. четыре операции основные четыре операции здесь. Теперь MySQL — это язык программирования. Это не SQL используется только в одном месте, это не язык программирования. что мы используем только в рамках одного единственного [44:57] база данных. Хорошо. Он имеет множество применений. в различных приложениях и платформы. И почему мы учимся посредством MySQL? Потому что MySQL бесплатен в использовании. Во-вторых, это самый простой способ... Изучите SQL. Если вы освоите основы [45:11] Здесь вы сможете адаптироваться к любому изменения, которые вы обнаружите в MSSQL, Oracle, PL/SQL или Snowflake — в зависимости от того, куда вы перейдете. Вперёд, верно? Итак, основы. остаются прежними. Это проект с открытым исходным кодом. Здесь система. Хорошо? И проще [45:27] используйте очень-очень простую скобку для пользователя интерфейс. Поэтому мы используем это здесь. Хорошо. Итак, давайте теперь разберемся в... Разница между СУБД и РЕДСМ. Это хранит данные в виде файла. мы это знаем В настоящий момент наша СУБД хранит данные в [45:40] форма таблиц. Теперь, э-э, СУБД Может иметь несколько пользователей. Мы можем связаться таблицы с общими столбцами, которые внешние ключи и первичные ключи там, и проводить исследования в реляционных СУБД несложно. И всего этого нет в СУБД. [45:54] здесь. Представление данных занимает больше времени, поэтому мы Я уже через это прошёл. Теперь а Быстро проверьте еще раз, какая система считается наиболее популярным и передовым версия СУБД с примерами, такими как MySQL, Oracle и MSQL. Как мы только что [46:08] Обсуждалось, это наша СУБД, верно? Надеюсь, вы находитесь на своем портале LMS. Портал LMS находится справа, когда Здесь вы нажимаете на кнопку «Самообучение». С правой стороны вы найдете нас... Найдите вертикальную карточку меню. Хорошо в вашем [46:23] Вертикальное меню позволяет увидеть все уроки, которые мы собираемся рассмотреть. Ты Собираюсь покрыть. Хорошо. Как видите, Мы сейчас это обсудим. Сначала у нас будет вводная часть, а затем мы начнём. работа с базой данных и таблицами [46:36] посредством различных типов команд вы Здесь можно увидеть, а затем мы посмотрим, как это сделать. ограничения и всё остальное. Там их много, э-э, есть всё. Здесь мы определили, что будем рассматривать. с темами и подтемами. Первый [46:51] Вот первое, вот на что можно посмотреть. Слайды для преподавателя. Это все Вы увидите, как я скачиваю презентации PowerPoint. использовать это в классе. Тогда вот вы Эти два типа практики? Здесь сначала [47:04] Здесь у нас есть практический проект, а затем Здесь мы предлагаем практические занятия под руководством инструктора. Вы тоже Здесь мы предлагаем практические занятия под руководством инструктора. Вы тоже Есть демоверсии. Верно? Что это за демоверсии? Используются именно эти демоверсии. внутри слайдов. Так что, когда вы уйдете [47:19] что они делают что-то небольшое действия внутри слайдов и там Там написано несколько запросов. Скоро что именно на уроке, который Для этого был использован конкретный набор данных. Напишите этот запрос, и можете смело приступать. [47:32] Здесь находятся папки с упражнениями и инструкциями для самостоятельной работы. Практические проекты, которые вы здесь видите. Это проекты Завершающий проект урока. Итак, как только весь ваш [47:45] узнал обо всех этих небольших командах Я всё ещё здесь, так что урок второй. Практический проект будет включать в себя почти всё из этого урока номер два, так что это проекты. Что содержат эти папки? [47:59] В папках находятся PDF-файлы и два PDF-файла. Проблема в том, что файлы сначала должны быть на месте. утверждение, а другое — это решение для это решение состоит в следующем: скриншоты и пояснения к ним Теперь выполните запрос к любому набору данных. [48:13] используется в любом из этих наборов проектов. Это будет предоставлено внутри набора данных найду три вещи, три папки внутри него. Один набор данных для демонстрационные примеры, один набор данных для практических занятий с инструктором. один набор данных для практического проекта. Так [48:26] Это ваши справочные материалы. доступный. Теперь я хотел бы, чтобы вы все... Нажмите на ссылку «Онлайн-занятия». Когда вы нажимаете на Здесь вы можете посмотреть онлайн-занятия, перейдя по ссылке. Здесь вы можете посмотреть онлайн-занятия, перейдя по ссылке. Здесь проводятся онлайн-занятия, у вас есть... [48:38] Вот эта коробка прямо сейчас с сегодняшней датой. Пожалуйста, нажмите на это поле. Когда вы нажмете на это поле, вы... Здесь вы найдете материалы для занятий. Здесь находятся материалы. Вы увидите несколько PDF-файлов. Вы увидите ссылки на YouTube. Те [48:52] перейти к эпсилону или трем точкам скопируйте его туда и вставьте. следующий браузер. Итак, материалы занятия и вещи. Материалы занятия представляют собой Материалы интерактивной сессии. Кем бы мы ни были [49:06] что бы я ни решил в прямом эфире сессия. Теперь материалы для занятия будут размещены. и дальше выясняется, что есть PDF-файл. один для Mac OS, один для Windows, когда угодно Мы говорим о данных, все хорошо? Допустим, мы сейчас поговорим о моей СРА. [49:21] Здесь присутствует Майра, когда мы говорим о СУБД. Здесь база данных состоит из трех частей. сущности, или, можно сказать, три компонента. Какие три компонента входят в состав? Хорошо, один из них. это будет оборудование, одно из которых будет это данные, которые мы сохраняем внутри этого [49:34] оборудование, а затем нам понадобится приложение для доступа к любым объектам Мы сохранили это внутри него. Так что, если вы поговорите примерно вот так, так что у нас есть программное обеспечение, аппаратное обеспечение и данные. Сейчас эти три компонента требуют [49:51] контейнер — физический контейнер, который аппаратное обеспечение прикладная программа программное обеспечение прикладная программа, которая нам поможет для подключения к оборудованию и получения данные внутри. Эти три компонента имеют Также три типа пользователей, исходя из данных. [50:06] препятствие означает, э-э, понимать данные Препятствование как средство обеспечения безопасности. Так у кого есть? какой уровень доступа к базе данных или отдельные таблицы данных. От первого лица Вот конечный пользователь. Кто конец? Пользователь на сервере? Конечный пользователь — это человек. [50:20] кто имеет доступ к данным в соответствии с должностные обязанности. Их главная задача — добыча обрабатывайте данные и создавайте отчеты. Они будут использовать процесс минимального кодирования и Их единственная задача — добывать сбор данных и составление отчетов, анализ. [50:34] данные, а затем переход к другим приложения. Это конечные пользователи. Они работа с внешним видом или как конечный пользователь на уровне приложения. Затем Вторые здесь — это приложения. программисты-разработчики для тех, кто мы есть [50:47] Сегодня их называют инженерами данных, не так ли? Мы называем их инженерами по обработке данных. Что бы Эти люди так делают? Это те самые люди. кто будет взаимодействовать с данными напрямую. Это те люди, которые будут решить, как получить данные внутри этого... [51:02] конкретный сервер. Как какой э-э Нужно ли создавать эти отношения? Что Какие данные следует хранить? Какой вид Какую модель следует создать? Так какого рода Схема должна быть там? Это всё. Решение принимает программист приложения. [51:15] Этот программист приложений получил Это никак не связано с анализом данных. они больше обеспокоены тем, как обрабатываются данные. управляется и обеспечивается безопасность внутри программное обеспечение. Теперь этот человек выходит третьим. сюда приходит человек, который работает с базой данных. [51:30] администратор. Это тенденция в Вся структура здесь потому что это это человек, ответственный за техническое обслуживание, работоспособность, восстановление [51:42] весь этот связь. Это означает, что сеть должна Работает как надо, верно? Так должно быть работоспособен. Таким образом, конечные пользователи могут продолжать. а затем получить к ним доступ и извлечь данные. набор. К тому же, это тот человек, который... [51:54] Предоставить пользователю ограниченный доступ. Этот человек будет контролировать всё. доступ к данным. Итак, согласно правилам работы всякий раз, когда возникает необходимость, вы сохраняете либо они предоставят вам набор данных, либо предоставят вам доступ к этой части [52:10] вам доступ к этой части база данных. Эти люди работают над внутренними процессами. уровень. Они будут работать на внутреннем уровне. или на физическом уровне, создающий идентификатор пользователя пароли, предоставляющие и заменяющие Задержка из-за проблем с безопасностью. Итак, это три из них. [52:25] Типы пользователей здесь. Итак, что же мы теперь хотим? Тип какого курса мы проходим? каждый? Речь идет об анализе. из набора данных. Вся эта программа набор. Вам предстоит проанализировать данные. набор. Так что либо вы аналитик данных, либо [52:39] Вы — бизнес-аналитик, или вы им станете. Переходим к науке о данных. любой из эти три, что бы ни было вашим предстоящим путь туда. Да. Так кто же вы? Который Вы пользователь? Один, два или три из них первые пользователи. [52:55] Я не понимаю, почему вы не уверены. Может быть Вы – опытный профессионал. прямо там. Хорошо. И вы работали в рамках смешанных должностных обязанностей. Вот почему куда ты собираешься отправиться и где окажешься в итоге. Так если вы из сферы программирования [53:09] работа с API и подключение множественные порталы и извлечение данных внутри сервера, тогда вы окажетесь Работаешь инженером по обработке данных, верно? Однако, когда вы присоединитесь, вы станете членом команды. аналитик данных, у вас не будет [53:23] вообще никакого доступа к SQL. Если только вы не присоединяясь к ним в течение 10-15 лет опыт и на руководящем уровне, тогда у вас будет доступ ко всему Три уровня, верно? Но э-э, те, кто вы учитесь впервые, и вы [53:35] Если у вас нет опыта, вы будете работая только с анализом и быть работая только с анализом и быть Здесь происходит извлечение данных. Хорошо. Не тот или любой, кто присоединится к нам в качестве аналитика данных. после этой программы. Они тоже нет [53:48] у нас будет доступ, чтобы убедиться, что данные будут получены, если только да, они присоединиться к работе, где они находятся предполагается изменить доступ и убедиться Данные там хранятся надлежащим образом. Теперь все зависит от того, на какой должности вы работаете. [54:03] Да, как аналитик данных, вам следует это сделать. Я знаю о двух вещах, связанных с этим местом. Первый здесь Ваш первый шаг в качестве аналитика данных — это... Для сбора данных всегда необходимо... э-э, сначала выясните, как указано в цель. Хорошо, какие именно таблицы данных? [54:17] требуется, и откуда вы собираетесь? получите эти таблицы данных и необходимую информацию. данные. Теперь это может исходить из одного-единственного источника. сервер или несколько разных источников. После этого номер вашего шага будет Теперь вы можете проанализировать свой [54:29] набор данных. Возможно, вы импортируете его в PowerBI, возможно, в Tableau, возможно, вы Если вам нужны эти данные в формате CSV, вы поступите следующим образом: Проведите предварительный анализ с помощью Excel. Итак, вы уходите. проанализируйте и создайте свой отчеты, и в конце вам нужно ими поделиться. [54:41] Создание отчетов для сохранения их у нас. Так мы продолжаем и делимся отчётами. их к BPM, как человек, который берет решения. Это и есть бизнес. менеджеры процессов. Однако, ладно, если Вы абсолютный новичок без работы. [54:56] опыт, хорошо, можете смело продолжать. в э-э, на уровень, где вы Буду писать SQL-запросы, хорошо? извлечь данные прямо отсюда или возможно, вас попросят помочь в обновление и изменение данных, если вы [55:09] им было предоставлено такое разрешение. Обычно это не предоставляется. Давайте поговорим Что касается нашего... вот мой SQL. Теперь я скажу SQL-операции. Давайте поговорим о SQL. операции, верно? Операции SQL здесь. Что мы делаем в первую очередь? [55:24] Вы здесь чему-нибудь научитесь? Здесь можно выполнять операции SQL. помочь нам сделать четыре вещи. Что у нас есть Там есть вещи, которые напоминают о них. Что были четыре вещи, которые представляют собой операции SQL. Что я могу сделать? Какие именно четыре операции были проведены? [55:38] Итак, первое, что мы здесь видим, это... Давайте поговорим о чтении. Создать мы понимать. Хорошо, создадим базу данных. Мы создаём таблицу. Создать — это нормально. Давайте Понимаете, что значит «читать», верно? Давайте Понимать, что значит читать. Что прочитано — это [55:52] Что вы собираетесь сделать? «Читать» — это, э-э, «читать» здесь. это поможет нам получить или извлечь данные из таблиц данных или набор данных или подмножество данных. Хорошо. От таблица внутри базы данных. Пока получение этих данных здесь, в то время как [56:06] для получения данных здесь нам может понадобиться Давайте, э-э, применим фильтр. Может быть, я хочу двигаться вперед и просто хочу для просмотра набора маркетинговых данных. Только Хотите посмотреть данные за последние шесть месяцев? набор. Это значит, что мы можем приступить к реализации. [56:19] Мне нужно отфильтровать данные из Первое, что нужно сделать, это посмотреть на строки справа. Возможно, мне стоит пойти по всем этим колоннам. и, э-э, оставьте только те столбцы, которые [56:31] нам нужно прямо сейчас, э-э, сейчас, после извлекая его или во время извлечения мы Возможно, мне захочется всё это как следует упорядочить, если захочу. Данные за последние шесть месяцев необходимо отсортировать. в надлежащем временном ряду или в надлежащем столбец с датой, чтобы мы могли продолжить сортировку. [56:43] Данные тоже иногда попадают в систему во время сортировки. Данные в порядке, допустим, у меня есть данные. Здесь, у кассиров. Так что же это за вид Какие данные у нас здесь есть? У нас есть... Идентификатор клиента, какой у него товар. купил(а), какая дата и время, что [56:57] сумма [прокашливается], которую они заплатили, Были ли там какие-нибудь купоны или что-то подобное? Там были карты, которые у нас были. используется там. Таким образом, имеющиеся у меня данные — это всего лишь... данные об объеме продаж. Если вы хотите пойти а дальше я хочу рассчитать прибыль. [57:10] доход там. Если нам потребуется больше После проведения этих расчетов мы можем продолжить. Добавьте и это. Так что, если вы хотите что-либо добавить своего рода вычисляемый столбец, мы можем это сделать. Мы можем сделать что угодно. Любой вид можно проводить математические вычисления [57:25] и не только математические вычисления, мы также можем продолжить работу с Также условные или логические утверждения. Вот что мы можем сделать с помощью функции чтения и... более. Итак, мы можем приступить к добавлению. Также рассчитывается и агрегируется показатель. [57:39] Возможно, мне просто нужно увидеть общую сумму продаж. В некоторых странах — общий объем продаж по видам продукции. тоже отчёты. Теперь, когда мы говорим о Создайте здесь. Все в порядке. Таким образом, внутри создать базы данных. Мы создаём данные таблицы. Мы вставляем записи данных внутрь [57:55] Этими вещами нам нужно управлять. слишком. Обновите таблицу или данные. внутри него. Мы записываем все данные. Теперь к выполнить все эти операции здесь, чтобы сделать, э-э, [58:07] Все эти операции нам необходимо выполнить здесь. Какие-то команды, верно? Словарный запас. Помнишь, я тебе говорил, что будет там ключевые слова, команды и словарь потому что это структурированный язык. Итак, чтобы выполнить все эти команды, что нужно сделать? [58:19] Это типы утверждений, которые мы будем над этим работаю. Какие бывают типы заявления? Командные группы или типы операторы для записи этих операций и мы называем их запросами данных DQL. язык. Здесь используется язык запросов данных. Так [58:33] выбранные утверждения, которые вы Здесь правильно сказано, то есть имеется в виду там есть язык запросов. Правильный? А вот это это язык запросов к данным. Это значит, э-э ключевые слова, используемые для запроса к э-э используется для выполнения запросов. Второй аспект – определение данных. [58:47] язык DDL. Что такое определение "э-э"? здесь? Мы определяем базу данных. структура или схема. Что мы делаем здесь? Мы определяем структуру базы данных. или схема. То есть, сколько количество э-э Какие у нас колонки? Каков характер этих данных? [59:01] Тип каждого столбца? Какой вид... Какие ограничения мы должны в это внести? Является Это дата? Какой формат? Верно? Так Это язык определения данных. Да, правильный. Например, создать таблицу, изменить структура таблицы, удалить [59:15] вся колонка, исходя из существования и гораздо больше. Третий год обучения – DML. Да, очень хороший. Третий год обучения – DML. Что такое DML? здесь? Язык для манипулирования данными. Что [59:27] Подойдет ли манипуляция языком? Это поможет нам вставить данные, обновить строки, удалить строки, возможно, объединить совокупность данных. Это манипуляция. Третий здесь — DCL. Да, очень хорошо. Спасибо. DCL — это данные [59:42] язык управления. Что представляют собой данные? Здесь используется управляющий язык? Этот контроль данных язык поможет нам дать доступ к людям, предоставление разрешений, отзывать разрешения и тому подобное. Это [59:54] обычно используется Дером, человеком, который предполагается предоставить разрешения, получить Идентификаторы пользователей для всех остальных. Это DCL. Затем у нас есть еще один магазин — TCL. TCL — это язык управления транзакциями. Зачем здесь нужен транзакционный контроль? Что такое [01:00:10] сделка? Хорошо, вот суть сделки. вы пытаетесь обновить базовый объект. данные. Вы пытаетесь изменить или удалить удалить столбец или несколько строк здесь, или вы Хочу добавить туда еще несколько строк, и это Это делается не одним человеком. [01:00:24] всей командой. Таким образом, вся команда над этим работает тот, кто следит за этим. правильно? Правильно ли это сделано? Правильно это или нет. Поэтому, выполняя эти действия, своего рода транзакционные запросы, хорошо, они [01:00:38] Используйте TCL с этим, и, э-э, вот что получится. Вот несколько примеров, например, сохранение/бросок кубика. вернуться и подтвердить, то есть сохранить до В этот момент вы должны быть готовы управлять Z. Отмените это, то есть откатите назад, или Полностью воплотите в жизнь те изменения, которые это означает. [01:00:51] обновить все данные, которые мы здесь сделали любые изменения, которые они внесли, не имеют значения. Вот что такое управление транзакциями TCL. язык, конечно, кто использует это ваш инженеры данных — вот кто ответственный за модификацию и [01:01:04] там. Итак, вот какие это типы. команды. Наше основное внимание будет сосредоточено на здесь. Наше основное внимание будет сосредоточено на следующем: здесь. Хорошо. Эм, я могу вам кое-что показать. Примеры приведены в конце. Возможно, я так и сделаю. Здесь я приведу несколько примеров. Но [01:01:18] Наше основное внимание будет сосредоточено здесь. Только Я же вам сообщу, правда? Итак, это Здесь находится командная строка. Вы будете У меня уже выбрана операционная система Microsoft Windows. Да. После того, как у вас будет установлена ​​операционная система Microsoft Windows, вы сможете её установить. [01:01:30] Выберите здесь, нажмите на кнопку. скачать. Выберите первый вариант здесь. Выберите первый вариант здесь. После того, как вы выберете первый вариант здесь, Это перенаправит вас на эту страницу. Верно Теперь на этой странице вы должны [01:01:45] нажать «Нет, спасибо». Затем начни мой скачать. Итак, тот, что здесь, размером 2 МБ, вы... Я скачаю именно этот файл. Как только вы нажмете «Нет, спасибо» и начнете мой скачайте, и тогда вы сможете увидеть все следующее. Шаги здесь. [01:01:59] здесь. В сообщении говорится, что они предоставляют очень Здесь приведены хорошие инструкции. Вы должны Нажмите на знак плюса. Тогда... вы... имеют Все версии расширены. Затем удвойте Нажмите сюда. Нажмите сюда. Вперёд! [01:02:13] правая сторона здесь. Затем найдите верстак. Следуйте тем же инструкциям. Здесь всё написано как положено. Как только вы пройдете через это. Здесь у вас будет всё и вся. В конце вы можете увидеть этот диалог. [01:02:26] коробка. Это увидят лишь немногие из вас, немногие из вас. Вы не увидите это диалоговое окно. Так, И вас это устраивает. Хорошо. Итак, вы нужно нажать на знак плюса и получить верстак и сервер на правая сторона. После этого [01:02:38] Здесь, друзья, вам нужно просто кликнуть. здесь знак плюса, как вы можете видеть. Это совершенно очевидно. Здесь стоит знак плюса. Хорошо. Здесь всё должным образом представлено. Так, [01:02:50] Мино и все остальные просто следуют указаниям. Инструкции здесь. Это действительно хорошо. PDF. Это проведет вас через весь шаги. Если вы столкнетесь с какими-либо трудностями, вы шаги. Если вы столкнетесь с какими-либо трудностями, вы дайте мне знать. Таким образом, на сервере всё отлично. [01:03:02] Затем, когда вы увидите список серверов, Выберите первый вариант и нажмите на него. Выберите первый вариант и нажмите на него. зелёная стрелка. Теперь нажмите на минус. Затем мы нажимаем на кнопку «плюс» на рабочем столе. снова. [01:03:15] Затем список версий Появится верстак, и вы получите Здесь тоже есть верстак. После получения этих Здесь два пункта, нажимаем «Далее». И после Ладно, продолжайте нажимать "Далее". Это На выполнение потребуется некоторое время. [01:03:30] В некоторых из ваших версий, если вы используете В Windows 10 вас могут попросить установить... Здесь есть визуальные материалы. Визуализация от Microsoft здесь. Согласитесь с условиями и положениями и Установите его. После установки просто Продолжайте нажимать кнопку «Далее», пока не дойдете до... [01:03:43] Пароль там, пока вы не продолжите. и найти пароль. Пожалуйста, сообщите мне пароль. Поясню вам. Этот пароль... э-э... не... Простой пароль для восстановления. Это Приложение с открытым исходным кодом для всех. Итак, [01:03:57] Приложение с открытым исходным кодом для всех. Итак, Пожалуйста, сделайте пароль root максимально простым. Хорошо, это должно остаться у вас в памяти. Запишите это где-нибудь. Запишите это где-то. Если вы думаете, что сможете Запомни это, хорошо? Ты можешь... э-э, это не так. [01:04:11] Запомнить это возможно. Я бы предлагаю выбрать CD 1 2 3 4 ab или э-э, четвертью такие пароли чтобы вы могли запомнить, ничего нет Сохраните и защитите данные здесь. Хорошо. Так что продолжайте Ваш пароль root очень прост. [01:04:27] возможный. Так что, если вы... потому что это Это не просто нажатие на кнопку «Забыли пароль». Вы получаете одноразовый пароль (OTP), и он сбрасывается. Это Так не будет. Как только вы Удаление и повторная установка не произведут никаких изменений. помочь вам. Вам нужно зайти внутрь и [01:04:40] затем измените это и обновите. Вы не можете Восстановите его. Поэтому убедитесь, что когда вы Получить доступ к паролю root очень просто. и запоминающийся. Хорошо. В этом приветствии пример. Хорошо. Итак, давайте приступим. Нажмите здесь на локальный экземпляр. Этот местный [01:04:56] Например, когда вы нажимаете на Здесь находится локальный экземпляр, он перенаправит вас на верстак. Что такое верстак? Здесь Это инструмент графического пользовательского интерфейса. так что мы можем приступить к доступу к сервер. Когда вы нажимаете на локальный [01:05:09] В данном случае, это ваш интерфейс. Изучу этот вопрос. Итак, у нас есть... Здесь почти четыре квадранта, все согласны. В В первом квадранте вы найдете себя. Здесь есть схема. Возможно, вы не такой. рассматривая схемы. Возможно, вы [01:05:21] рассмотрение административного управления так. Да. Итак, с левой стороны Здесь вы найдете свой навигатор. Здесь руководство. А чуть выше этого Обратите внимание: здесь вы найдете быстрый доступ. панель инструментов. Выше этого у вас есть [01:05:35] выпадающее меню, панель инструментов, и вот что у нас есть. вкладка «Главная» и вкладка «Локальный экземпляр» Вкладка "Локальный экземпляр"? Если вы пойдёте, вот это. На вкладке «Главная» вы перейдете на приветственный экран и возвращение в локальную сеть пример. Может быть много подобных случаев. [01:05:49] Откройте здесь отдельно. Теперь мы внутри В навигаторе мы видим экземпляр управления. Здесь представлены варианты. Здесь вы также найдете Найдите опцию, которая называется «схема». Пожалуйста, нажмите на схемы. В схемы, вы видите цилиндр прямо сейчас? [01:06:03] сейчас? Цилиндрическая конструкция... меню. Пожалуйста, нажмите сюда. Теперь ваша очередь Щелкните по локальному экземпляру. Введите ваш Введите пароль, и вы попадете сюда. Так Теперь давайте рассмотрим интерфейс. здесь. Хорошо. Хорошо. Итак, как мы это делаем сейчас. [01:06:19] Мы видим этот контейнер, все? Я надеюсь Да, это так. Этот контейнер — наша база данных. Что это? Этот контейнер — наш. база данных. Но что здесь написано? Это говорит, что это схема. Правильный? Так что в Давайте поговорим о MySQL. [01:06:32] прямо сейчас. Что такое база данных в MySQL? В MySQL данные — это база данных, термин... база данных в порядке, так и будет эквивалентно или синонимично схемам. Так [01:06:44] Теперь мы понимаем, что такое база данных. Правильная система хранения, но я пытаюсь... Скажу вам прямо, вам нужно... Эта схема и база данных являются синонимами в Эта схема и база данных являются синонимами в MySQL правильно. Таким образом, в базе данных MySQL это выглядит так: [01:06:57] реализовано в виде каталога, содержащего все файлы, соответствующие таблицы базы данных. мы можем, если вы Хочу создать базу данных... базу данных Хочу создать базу данных... базу данных Внутри MySQL вам потребуется права администратора. [01:07:11] привилегии администратора доступ без прав администратора доступ, который вам не разрешено создавать Вам не разрешено создавать база данных или таблицы и термин Схема и база данных являются синонимами в В MySQL мы можем скопировать [01:07:26] и клонировать функции базы данных, которые мы можем храните резервную копию копии существующая база данных плюс мы также можем это сделать также включает структуру таблицы и множество свойств, таких как индексы, ограничения и значения. По мере вашего движения [01:07:40] Далее мы узнаем о них. и терминологию тоже. Теперь внутри В базе данных есть одна вещь, которая Мы все должны об этом знать. Что такое что? Во время работы с базой данных, Хорошо, есть такое понятие, как актив. [01:07:54] Здесь происходит нечто очень-очень важное. Здесь представлены свойства активов базы данных. транзакции обеспечивают нам надежное управление и управление базой данных. Сейчас Послушайте это очень-очень внимательно. Этот Это то, о чём часто спрашивают в [01:08:09] Здесь проходит собеседование, и это кое-что. вы должны понимать, как Всё работает. Итак, есть четыре вещи. здесь атомарность, согласованность, изоляция и долговечность. Что здесь представляет собой атмосферность? Давайте Поймите это на примере экзамена. Хорошо. Хорошо, [01:08:23] Здесь написано следующее: я гарантирую это. Транзакции выполняются полностью или частично никчемная манера. Верно? Позвольте мне дать Приведите вам пример. Случалось ли такое когда-нибудь? с вами, за что вы заплатили, у вас есть Вы заплатили за что-то онлайн, и... [01:08:37] Они говорят, что ваша транзакция имела провалилось, или если вы все же оплатите там. онлайн. Хорошо, они совершили транзакцию. Сумма списана с вашего счета, но [01:08:49] Они говорят, что это еще не отражено в их часть. А если в течение следующих получаса Это не означает, что они позаботятся об этом. что сделка не состоится и вам вернут деньги. Мы это сделали? Вы когда-нибудь сталкивались с подобными ситуациями? Да или нет? [01:09:01] Вы когда-нибудь сталкивались с подобными ситуациями? Да или нет? Да. Это атмосферность, то есть либо сделка состоится, или же... Этого вообще не произойдёт, но Оно не останется посередине, что Хорошо, я обновил несколько строк. [01:09:14] и обновилась только половина строки. Другую половину там не было. Это не Буду работать именно так. То есть атмосферность. Это позволяет разработчикам сосредоточьтесь на логике приложения, а не на сбои, а также восстановление [01:09:27] сложность окружающей среды. Хорошо. Эм-м-м Это тоже легко сделать. И все из Вот это, вот это, это исключительно интересует вопрос о том, как база данных восстанавливается. от любых сбоев, от любых транзакций или сбой системы, который может произойти во время [01:09:42] процесс или обновление данных набор. И все базы данных, которые мы видим Здесь обеспечено соответствие активов установленным требованиям и гарантируется, что только сделки, которые были полностью Успешное завершение процесса будет обработано. Если Сбой происходит до обновления. [01:09:57] что-то, если сбой произойдет раньше Э-э, транзакция завершена, данные Изменения внесены не будут. Например, я Хочу продолжить, исходя из... кредитный лимит человека, я хочу, мы хотим чтобы посмотреть, какая кредитная карта подойдет [01:10:12] карту, на которую они имеют право, чтобы мы можете позвонить им и связаться с ними. отправляйте им электронные письма, которые вы им сообщаете. Если вы имеете право на получение этой кредитной карты, пожалуйста, Мы хотим внести в это изменения. база данных и аккорд, и мы хотим добавить [01:10:28] Вот эта кредитная карта. Да. И мы пошли и мы придерживались этой логики. на этот конкретный уровень, и если эти Если условия выполнены, этот человек должен быть имеют право на получение этих кредитных карт, и мы [01:10:41] Хотите создать формулу? для этого. Но когда мы создаём формулу Здесь либо это будет реализовано, либо нет. рассчитать для каждого человека или идентификатор клиента, указанный там, или он будет Даже не добавляйте эти данные туда. То есть [01:10:55] Всё или ничего. Всё или ничего означает либо сделка состоится, либо нет Этого не произойдёт. Верно. Итак, самый простой Примером того, о чем мы говорили с Али, является... Когда вы платите онлайн, хорошо, и ваш... Сумма списана с вашего счета, но [01:11:09] Они говорят, что мы не получили ваш сумма еще и в течение следующих получаса, если эту сумму вам вернут. система. Так что это либо всё, либо ничего. потому что это пример атмосферность. Я не утверждаю, что это именно так. [01:11:22] База данных работает. База данных работает так, как я Хочу добавить столбец, но что-то происходит. или же возникает ошибка. Все в порядке. Это не собирается его обновлять. на середине. Этого не произойдёт. обновить всю колонку целиком. [01:11:34] если только... э-э, оно может продолжить обновление. каждая строка в этой базе данных. Этот столбец добавляться не будет. Так Это и есть атмосфера. Что такое последовательность? здесь? Последовательность — это просто. Хорошо, это поддерживает транзакцию. Оно поддерживает [01:11:48] что транзакция следует определенному набору условий правила. Что же здесь подразумевается под последовательностью? Последовательность здесь означает, что она сохраняется. транзакция, и за ней следует ряд действий. правила. То есть, если мы собираемся уйти и вносить изменения в любую базу данных в рамках [01:12:02] Сама команда, мы приступим к работе. Некоторые правила, хорошо? Как это работает? и каков набор правил, которые мы Все должны следовать указаниям. важно в рамках обеспечения согласованности, как Последовательность будет сохранена. Если вы [01:12:17] Знайте, что если мы захотим пойти... Весь процесс сохраняется сразу, если вы хотите это изменить или хотите внести изменения вы хотите внести изменения или обновить база данных, поэтому все будет согласованные данные должны быть всегда [01:12:31] действительный. Итак, если я использую здесь дату, то... DDMY, поэтому дата данных будет точно такой же. что это и есть последовательность. Например: как только вы переведете деньги кому-либо сразу после перевода денег на Что происходит с банковским балансом? [01:12:47] останется неизменным независимо от транзакций. Вы уже рассчитали остаток на банковском счете или общую сумму. Остаток на банковском счете останется неизменным. Итак, если Вы дали кому-то 1000 рупий. Это позволит вычесть всего 1000 рупий. автоматически это просто не произойдет [01:13:00] Совершите транзакцию. Таким образом, это поддерживает Последовательность в этом вопросе. Вот и всё. последовательность. Поэтому данные всегда должны быть Действительно независимо от правил базы данных. являются. Если правила базы данных и Если установлены ограничения, то всё пойдёт своим чередом. [01:13:14] проверка данных и типы данных и а также другие ограничения и препятствия. Это и есть последовательность. Третий год изоляция. Изоляция довольно интересный. Это гарантирует, что Сделки не влияют друг на друга. [01:13:28] Что это значит? Это означает, что каждый транзакция произойдет независимо не мешая друг другу. Итак, для например, если я собираюсь добавить Сначала создадим столбец, затем добавим его. Если я удаляю другой столбец, то удаляется именно этот столбец. [01:13:42] будут удалены отдельно. Они не являются будут влиять друг на друга. в реальном времени например, есть два люди. Хорошо, это два разных человека. Они переводят деньги одновременно. время. А вы думаете, это произойдет? [01:13:55] много-много людей, они перевод денег внутри одного банка в то же время. Это произойдет? Исправлять ли друг друга в работе? Является Это приведет к перемешанию количеств или Банковские реквизиты? Нет. Почему? Потому что они [01:14:09] изолированные транзакции. Они произойдут независимо для них. Вот и всё. изоляция. Итак, пока мы обновляем база данных также была учтена. и мы работаем в рамках этого. Вот и всё. изоляция. Так что, если вы занимаетесь каким-либо видом деятельности [01:14:23] обновление, изменение, добавление данных. удаление данных или добавление столбцов, удаление столбцов или любых вычислений внутри него или создавая отношения или что угодно, каждая транзакция Это заявление будет отдельным и изолированным. [01:14:37] Теперь мы переходим к четвертому: долговечность. Что здесь подразумевается под прочностью? Долговечность гарантирует сохранность записанных данных. не будет потеряно. Итак, долговечность говорит Всё в порядке, как только транзакция будет завершена. обязуемся это сделать, как только завершим этот процесс. [01:14:50] и мы взяли на себя обязательство, что тогда это произойдет останутся даже в случае отключения электроэнергии или... что бы ни случилось, всё рушится, но как только транзакция завершена, допустим, я... Я добавил столбец. значения, а после этого, даже если, э-э, [01:15:05] Отключение электроэнергии или сбой сервера данные останутся в пределах этой зоны конкретный сервер. Поэтому, когда вы переключаетесь Хорошо, если вы выключите ноутбук, данные всё равно останутся. что. Вот что такое долговечность. Итак, для например, когда вы кому-то платите [01:15:21] и на вашем экране это отображается следующим образом Передача данных на экран прошла успешно. Так когда отображается сообщение об успешной передаче и там из банка уходит 1000 рупий. Ваш аккаунт, который будет действовать постоянно. Не могли бы вы Вы сами это исправите? Хорошо. Как только [01:15:35] запись будет создана там, она будет созданный. Мы не можем это изменить. Так что это долговечность, которая достигается после совершения транзакции Сделка будет завершена. какие бы изменения это ни внесло эти Изменения также будут окончательно утверждены. Так что [01:15:48] Это свойства активов баз данных, это... и все базы данных должны быть удалены Перейдите по этой ссылке, чтобы ознакомиться с этими свойствами. Итак, в полная система учета активов база данных двигатель гарантирует, что синхронный Используются параметры записи. Следовательно, это [01:16:01] предпочтительнее физического носителя. Так По сути, мы пытаемся сказать следующее: во всей этой системе активов прямо здесь. мы, инженеры данных, в основном те, кто которые проектируют всю систему и поддерживая набор данных, они будут следовать [01:16:14] то же самое, и он разработан на основе эти четыре объекта недвижимости. Теперь у нас есть Обсудили базу данных и схему. Синоним и мой SQL-запрос верен. Так мы и сделаем Синоним и мой SQL-запрос верен. Так мы и сделаем Теперь давайте посмотрим, как мы можем продолжить и увидеть кое-что. [01:16:27] очень небольшое количество ключевых слов, когда инструкции даются непосредственно для Например, я дам инструкции для SQL. добавьте столбец в В существующую таблицу будет добавлено следующее: Колонка, верно? Потому что я единственный пользователь. [01:16:42] но как будто я единственный пользователь, похожий на меня в команде несколько пользователей Возможно, каждый делает свою работу. Я обновляю набор данных о клиентах. Ещё один вопрос — информирование сотрудников. обработайте это. Хорошо. Так что, если я даю [01:16:55] данные, которые предоставляет еще один человек. Те же инструкции для другого стола, но в пределах одного сервера. Эти инструкции или транзакции не Сейчас всё запутается. Я говорю, что В разделе "Клиент" создайте столбец. [01:17:11] одновременно, если этот человек говорят: обратитесь к сотрудникам и обновите информацию. там никаких ссор это не повлияет вообще никакие сделки друг с другом здесь не заключаются. Или очень простой пример, когда вы идете в В банкомате одновременно находятся два человека. [01:17:24] Что означают деньги, снятые с банкомата? Если вы напишете 5k, другой человек напишет 10k. и вы получите 10 тысяч от этого человека. Такое бывает? Нет, это не так. изоляция, которая, несмотря на то, что двое более В этом занятии работает несколько человек. [01:17:40] Та же система, верно? Они не собираются... Влияют друг на друга, верно? Так что давайте начнём! как здесь писать эти синтаксисы и Что означают синтаксис и параметры? Это значит, что мы увидим это и здесь. Теперь... Когда мы говорим «база данных», мы говорим «здесь», а значит, «там». [01:17:55] Существует три типа схем баз данных. Сейчас Что представляют собой эти схемы: основные или логические? и здесь представлена ​​физическая схема. Однако к Давайте сначала поговорим о схемах. графический пользовательский интерфейс и запустить что-нибудь там задают вопросы. Тогда мы придем сюда и [01:18:11] Поговорите о командах. Хорошо, у нас есть Как уже было видно, это основные моменты. Типы команд там. Итак, начнём. Впереди посмотрим. А вот это... вот это Вот здесь мы пишем наши запросы. Эта конкретная часть также [01:18:27] иметь панель быстрого доступа. Все на С правой стороны находится справка. раздел. Хорошо. Что это? Это раздел справки, и именно здесь мы видим Действие завершено. Какой вид действия Вывод здесь? Какой бы запрос мы ни ввели [01:18:40] здесь. Хорошо. Когда мы это выполним, тогда время выполнения какое действие или что Запрос был выполнен, и каков результат? выполнение и его продолжительность Потребовалось ли это действие, и результатом будет...? Итак, давайте начнём. [01:18:55] Итак, давайте начнём. Впереди и, э-э, сначала узнайте здесь, как это сделать. Мы что-то здесь печатаем, поэтому вот первое: Есть ли у нас здесь база данных? Нет. Есть ли здесь какая-нибудь база данных? Давайте... понять, как двигаться дальше, и сначала [01:19:09] Оставьте комментарий, и тогда мы посмотрим, как это сделать. Получить набор данных можно здесь. Итак, первое, что мы В данном контексте термин «схема» будет использоваться как синоним. MySQL и нигде больше. Как нам добавить Обязательная однострочная связь? Так что, если мы, э-э, если Давайте введём здесь знак фунта. [01:19:24] или хэштег, как вы его назовете, мы можем добавить одну строку. Если мы хотим добавить с этим, или же мы можем просто напечатать. два знака минус или дефис и пробел здесь. Это также добавляет одну строку. комментарий. Что же здесь подразумевается под комментарием? [01:19:40] Почему это важно? Комментарий в одну строку Вот неисполняемая часть. Что такое это? Это неисполняемая часть. По сути, это описание какие бы коды и запросы вы ни задавали Пишу здесь. Но что вы делаете? [01:19:53] Над чем вы работаете? Так что, как угодно. Вы пишете здесь, вы должны писать. Это и будет тот самый вопрос. Но не каждый когда мы сможем написать все Объяснение тоже в одной строке. Так Здесь у нас косая черта. [01:20:07] и знак астры и знак астры и косая черта. Итак, мы начинаем Писать вот так. Все в порядке. А если вы Если нам нужна многострочная команда, мы хотим Писать в несколько строк, верно? Итак, мы необходимо поместить их внутрь [01:20:24] необходимо поместить их внутрь эти здесь косая черта и начало. Итак, что же мы хотим сделать? Мы хотим... нам нужно продолжить и получить база данных, верно? Нам нужно получить базу данных. здесь, потому что сейчас у нас есть [01:20:37] системная база данных. Этого не произойдёт. Какие-нибудь столы или что-то подобное. В нем есть некоторые Это лишь некоторые системные детали. Верно? Видеть Какие здесь есть столы? Система конфигурация. Это не поможет. Мы здесь. Итак, нам нужно получить [01:20:49] база данных. Как нам получить доступ к базе данных? здесь? Итак, у нас есть либо то, либо другое, либо нам следует... здесь? Итак, у нас есть либо то, либо другое, либо нам следует... имеют SQL-коды, с помощью которых выполняется запрос. коды, посредством которых создаются данные. Верно? Итак, я создаю здесь базу данных. [01:21:04] Верно? Итак, я создаю здесь базу данных. Или же мы можем использовать CSV-файл. Мы можем иметь Или же мы можем использовать CSV-файл. Мы можем иметь CSV-файл, который мы можем импортировать сюда. Хорошо. Итак, мы можем приступить к импорту. столы тоже. Итак, сначала мы увидим [01:21:16] Вот как получить доступ к базе данных, используя... Курс по SQL находится здесь. Верно. И Как нам это сделать? Как нам двигаться дальше и создавать это? база данных. Итак, давайте поговорим о создании база данных. Верно? Что бы я ни писал здесь. Хорошо. практически в режиме реального времени. я [01:21:32] Обновлю и это. Теперь Excel — это довольно прямолинейно. Извините, SQL довольно Чтобы создать базу данных, нам нужно просто... Перейдите по ссылке и впишите C в выпадающее меню. Ты Видно, что функция создания там есть, верно? Итак, из В выпадающем списке можно нажать на вкладку и [01:21:45] Функция создания будет доступна. Вы также можете Давай, поиграй с мышкой, и... дважды щелкните по этому. Это будет написано там. И если вы собираетесь это получить что-нибудь, выберите ключевые слова из Выберите из выпадающего списка тот вариант, который будет удобнее для ввода текста. [01:21:59] Что же мы хотим здесь создать? Мы хотим чтобы приступить к созданию базы данных. Итак, мы Можете смело писать DA. У нас есть База данных находится прямо здесь. Сейчас мы создаём Наша первая база данных здесь. Верно? Так что я Назову его вот так. [01:22:12] Первая база данных. Я называю её первой базой данных. Ты Можете назвать как угодно. Итак, это создать базу данных. Первая база данных здесь. А теперь сосредоточьтесь на том, что я делаю. Видеть Когда мы здесь задаём вопросы для обучения, [01:22:25] Следуйте за мной. смысл первый э-э Посмотрите, что я вам показываю на экране. где это выполнить, как это сделать и Я покажу вам, где находится результат. Внимание! Пожалуйста, обратите внимание на экран. Смотрите, я написал код для создания базы данных и [01:22:39] Сначала база данных здесь, а затем у меня есть Здесь стоит точка с запятой. Да, что? Почему? Нам это здесь нужно, причина в том, что... точка с запятой Здесь завершается высказывание, которое оно содержит. Здесь завершается высказывание, которое оно содержит. э-э, это говорит С, вот где [01:22:54] ваша команда или инструкция останавливается. Правильный? Таким образом, это прекращает свое действие. утверждение, которое здесь делает Это заявление. Это единственное приказ, что вы должны двигаться вперед и выполнить прямо сейчас. Как же мне это выполнить? [01:23:08] Эта команда здесь для выполнения команды. Здесь вы можете либо нажать кнопку Ctrl+Enter+Right — это сочетание клавиш. Введите здесь или перейдите к запросу. Выпадающее меню здесь, и вы увидите первый вариант. Если вы пойдёте Для запроса через выпадающий список есть два варианта. [01:23:21] здесь. Сначала нажмите Ctrl+Shift+Enter. Это будет выполнено. что бы вы ни выбрали. Выбор означает надлежащий Выберите его, и оно должно выделиться. быть выбранным. В противном случае это состоится. и выполнить любые коды или запросы. [01:23:35] Они находятся внутри сценария. Мы звоним Это скрипт. В противном случае, если вы хотите Приступайте к выполнению текущей задачи. заявление, которое мы имеем здесь прямо сейчас где наш курсор мигает прямо сейчас выполняется текущее выражение, которое [01:23:47] Ctrl+Ввод. Мы также можем продолжить и Используйте их здесь. Хорошо. Итак, это первое Молния, которую вы видите здесь, это приступит к выполнению всех или выбрано. Здесь выполняется текущая операция. состояние, потому что там находится курсор. Так [01:24:02] Молния с курсором будет выполнить текущее выражение в любом месте Выполняя это, мы осуществляем это для Вы здесь впервые, верно? Позвольте мне показать Тебе это нравится? Итак, если это так Вы можете выбрать это утверждение следующим образом: [01:24:15] хочу использовать вторую молнию и мы выполняем только одну единственную операцию. строка, мы можем оставить курсор здесь и выполнить с помощью молнии Наведите курсор или нажмите Ctrl+Enter. Итак, когда Мы кликнем сюда, посмотрим, что произойдет. [01:24:30] Результат выполнения действия отображается зеленым цветом. Подпишитесь, и мы создадим здесь базу данных. Один ряд был затронут справа, но даже когда Когда это повлияет на ситуацию здесь, сможем ли мы? увидеть что-либо прямо сейчас здесь, на Часть схемы? [01:24:46] Нет. Поэтому вам нужно обновить страницу. Схема находится здесь. Итак, сначала мы продолжали наш курсор внутри. Мы это выполнили. верно. Теперь обновите страницу. схема. Итак, как только мы перейдём к следующему шагу и обновим страницу Здесь представлена ​​схема, по которой мы находим нашу базу данных. [01:25:01] прямо там. Конечно, в данный момент это так. пустой. Хорошо, внутри ничего нет. это. После запуска исполняемого файла мы его выполняем. Хорошо, тогда посмотрим на результат. Здесь мы видим результат действия. Но если Если вы хотите просмотреть схему, перейдите по ссылке. [01:25:14] Здесь нам нужно обновить схему. И Здесь находится небольшая кнопка обновления. Нажмите сюда. Вы найдете это здесь. Так это первое. Это второй. [01:25:26] И это будет третий шаг. Хорошо. Это административная работа. Только Справа расположены схемы. Когда Здесь есть небольшая кнопка обновления. Я слишком много внимания уделил... этот. Вы сможете это найти самостоятельно? [01:25:40] пожалуйста? Видеть а что такое трехсторонний... Здесь сначала мы могли бы создать Базу данных мы должны создать сами, но теперь нам нужно... создать таблицу внутри таблицы мы необходимо вставить отдельную строку два, поэтому [01:25:56] А теперь вместо этого давайте перейдем к делу. Теперь как нам импортировать данные? Данные взяты из SQL-файла. SQL-файл, в котором уже находятся коды. Этот файл, написанный для нас, находится в материалы сессии, которые называются моими [01:26:10] Папка с примерами баз данных SQL. Если вы позволите Давайте развернем и извлечем это. папка всем Перейдите к выпадающему меню файла слева и вверху. Перейдите к выпадающему меню файла слева и вверху. в углу выпадающего списка файлов у нас есть [01:26:23] в углу выпадающего списка файлов у нас есть Четвертый вариант: открыть SQL-скрипт. Итак, мы Здесь выпадающий список файлов находится слева и сверху. В углу, посмотрите, нажмите «Открыть SQL-скрипт». Просто следуйте указаниям и найдите, где находится ваш файл — это каждый, и человек, который есть [01:26:39] При работе в лаборатории перейдите на рабочий стол. На рабочем столе вы найдете классический... э-э, вы найдет папку с классическими моделями внутри папки классических моделей вы Возможно, мы найдем файл, поэтому мы собираемся... Файл находится здесь, нажмите на скрипт OpenSQL. [01:26:55] найти различные сценарии где бы вы его ни сохранили [01:27:10] линии? Если я прокручу вниз, вы увидите считают, что это нормально, они создали база данных на 26-й строке, а затем они создали таблицу, а затем они Там было вставлено не так много строк. Итак, это [01:27:23] что-нибудь еще. Просто удерживайте курсор. Где бы вы ни находились, неважно, где бы вы ни были. удерживая курсор. Удерживайте курсор где угодно. Это не имеет значения. Просто... иди... Выберите нужный вариант в выпадающем списке и нажмите на него. выполнить все. После того, как вы откроете [01:27:36] Здесь находится SQL-скрипт, перейдите к запросу. Выберите пункт «Выполнить все» в выпадающем списке. Так когда вы нажимаете «Выполнить для всех», Хорошо, будет получен результат действия. Некоторый будут зеленые флажки, некоторые будут предупреждения. Пока что, пожалуйста, игнорируйте. [01:27:48] всё это. Итак, как только вы нажмете на выполнить, хорошо, подождите пять секунд Там вы увидите много проверок. знаки и зеленые предупреждающие знаки там И это совершенно нормально. Мы не видим Классические модели прямо здесь. Итак, хорошо. [01:28:01] Пожалуйста, обновите страницу еще раз. Пожалуйста, обновите схемы здесь. Пожалуйста, обновите схемы здесь. подтверждать. Вы можете увидеть классику? какие модели сейчас? Да. Теперь я бы также хотел, чтобы вы заплатили... [01:28:16] Здесь две вкладки. Видите, у нас их двое? А еще один пример – это то место, где мы писали. запросы. Мы это видим? Да. Итак, у нас есть [01:28:28] Классические модели прямо здесь. Мы обновили страницу, и да, мы добавили По две вкладки каждому. Одна вкладка будет для Пример базы данных MySQL и пример для выполнения запросов. один. Верно? Поэтому, пожалуйста, вернитесь обратно на Выполните первый запрос и закройте пример MySQL. [01:28:42] база данных. Нам это больше не нужно. Пожалуйста, закройте эту тему. Это будет сохранено в вашей системе. Пожалуйста, закройте это. здесь и оставить только один запрос. И сохраните это тоже. Один раз Вы попробуете сохранить это диалоговое окно. [01:28:57] откроется. Вы можете сохранить запрос следующим образом: переход к выпадающему списку файлов переход к выпадающему списку файлов и сохранить, а затем нажать здесь на кнопку «Сохранить». и сохранить, а затем нажать здесь на кнопку «Сохранить». Хорошо, [01:29:17] Сохраните файл в любом месте. Назовите то, что вы ищете. Поэтому убедитесь, что вы находитесь именно там, где находитесь. где мы сохраняем, где мы пишем коды. Это классические модели на данный момент. [01:29:32] Мы, э-э, внутри классических моделей здесь я Хотелось бы, чтобы вы развернули текст, пожалуйста, разверните. В классических моделях вы увидите столы. Здесь, когда вы разворачиваете таблицы, здесь мы Список таблиц вы увидите здесь. Здесь также есть несколько баз данных. [01:29:46] Верно, так как же нам двигаться дальше и посмотреть? Что представляют собой все эти базы данных? присутствует здесь, хорошо, так что мы можем просто спросить Почему бы вам не показать это? базы данных Следующий шаг — написать код для отображения баз данных. [01:30:03] здесь. Верно? Поэтому мы просто продолжаем и попросите его отобразить базы данных. Тогда это собирается раскрыть нам скрытые базы данных тоже, чего мы здесь не видим в этих схемы. Поэтому мы просто приступаем к написанию. показать базы данных. Мы можем увидеть список [01:30:17] Здесь находятся базы данных. Да. Что же мы видим сейчас? здесь? Что это? Мы рассматриваем этот конкретный квадрант для первого Время здесь, потому что результат есть, верно? Что это? Это называется результатом. сетка. Это называется сеткой результатов. [01:30:32] В таблице результатов отобразится временный результат. выход. Это временный результат. Так в то время как при написании здесь мы показываем базы данных, Что оно здесь делает? Это показывает нам список списка баз данных здесь. И это будет [01:30:46] временный результат, который мы можем видеть или экспорт. Так что мы можем увидеть это здесь. Хорошо. И Экспортируйте его отсюда. Поэтому, когда вы спросите Если у вас возникнут вопросы, предоставьте данные. для данных от любого администратора базы данных Чем они занимаются? Они предоставляют вам CSV-файл. [01:31:00] В большинстве случаев они правильно оформят документы. Предоставляет CSV-файлы. Таким образом, вы получаете возможность экспорта. Предоставляет CSV-файлы. Таким образом, вы получаете возможность экспорта. Дальше — поехали. Это именно то, что есть. ваша временная операция. Мы продолжим Здесь мой курсор. Мой курсор находится здесь и [01:31:13] Это молния с... курсорный знак. Поэтому я продолжу и курсорный знак. Поэтому я продолжу и Выполните это. И вот мы здесь. Или вы можете нажать Enter, и мы увидим временный вывод. Этот временный вывод [01:31:25] можно закрыть. Мы говорили о разных базы данных, верно? Мы говорили о СУБД. СУБД — это простые файловые системы, которые СУБД. СУБД — это простые файловые системы, которые У нас есть такие ноутбуки. Второй, [01:31:37] СУБД. Чем похожи СУБД на Oracle? MSSQL, PL/SQL, PISQL, э-э, у нас есть MySQL. Здесь, верно? Все снежинки на месте. Это также тип реляционной СУБД. [01:31:49] базы данных, где данные связаны с друг друга. Правильный? Тогда мы получили Объектно-ориентированная NoSQL. В NoSQL Данные не сохраняются в виде таблицы. Это сохраненные в виде объекта или значений JSON. Почему? Потому что он содержит неструктурированные данные. [01:32:03] набор данных, например, если у вас есть видео, вы у вас есть у вас есть видео, подкасты, комментарии, блоги, посты, фотографии. Итак, набор географических данных. Это слишком большой объем данных, чтобы сохранить его в таблице. [01:32:16] Подобные вещи сохраняются внутри находящиеся там предметы. Затем у нас есть график. базы данных. Графовые базы данных сохраняют налаживание связей внутри иерархии или Блок-схема. У него есть родительский узел, Отношения между родителями и детьми: начало [01:32:28] узел, конечный узел, узел связи. Так Вот она, графовая база данных. Так Мы говорим о графовых базах данных. о социальной сети LinkedIn как они отслеживают, кто вы есть связаны с ними и как они связаны [01:32:42] взаимосвязано с ним, это ваше В LinkedIn вы заходите в Facebook и видите... рекомендации прямо здесь, прямо там Это реальные сценарии, так что вот они. где создаются эти базы данных какие бы базы данных ни существовали, когда мы [01:32:54] Например, если говорить о СУБД, то существует... офис, э-э, организация, которая Вся организация собирает данные. из различных источников. Что это такое? несколько источников? Организация — это Создание набора данных. Итак, как же это сделать? [01:33:10] Думаю, данные начинают поступать. серверы? Мы все туда ходим. Все мы серверы? Мы все туда ходим. Все мы — Идите в офис. Правильный. И э-э, делают вы проводите своей картой или Возможно, вы используете биометрическую систему учета посещаемости? [01:33:23] Все ли мы так делаем? Да. Вы создаёте данные. Вы создаёте данные. Где находится Куда деваются эти данные? Куда это сохраняется? У всех нас есть портал, через который вы можете получить доступ к информации о себе. Можете смело упорядочить свою посещаемость? Проверьте свою посещаемость и подайте заявку. [01:33:38] листья. Вы можете скачать свою зарплату. соскальзывать. Вы можете проверить всё. Мы У вас же есть портал, верно? Этот портал как веб-сайт. Этот портал похож на веб-сайт. Правильный? Теперь, если этот портал как веб-сайт, где они находятся? [01:33:52] В бэкэнде этот веб-сайт собирает их набор данных где-то есть. Это их база данных. Но является ли эта база данных вашей? сервер? Нет. Это там, где находится их набор данных. сохраняется в фоновом режиме. это ваша база данных или это ваша [01:34:08] Сервер Oracle или сервер MySQL? Нет. Итак Здесь происходит то же самое, что и с системой управления персоналом (HRMS). там есть программное обеспечение. На аналогичной основе мы Также у нас есть база данных. инженеры, которые продолжат подключение эти наборы данных приложения передаются на наш сервер [01:34:25] и они позаботятся о том, чтобы что бы ни случилось Данные создаются из всего этого. отделы, возможно, это продавцы. Использование Salesforce и данных позволяет получать там обновлено. Так что же они собираются делать? И к чему это всё? Они пойдут дальше, и они [01:34:38] Сначала получите эти данные. они пойдут вперёд и они получают данные сначала из несколько разных несколько разных параметры. Теперь могут быть множество различных веб-сайтов или порталов или API для получения этих данных. [01:34:52] сохранено, и как только они начнут действовать, получить данные сюда, а затем... мы тогда конечные пользователи, такие как мы, смогут получить доступ к... а) извлечь данные и фактически Поработайте над этим. Поэтому я, как конечный пользователь, не являюсь обеспокоены тем, откуда поступают данные. [01:35:07] на сервер. Меня беспокоит следующее: если моя должность связана с финансами, если моя работа Моя должность связана с оперативной деятельностью, и я занимаюсь этим уже некоторое время. Получив объективную цель в качестве специалиста по аналогии с данными, Нам поставлена ​​задача, которая... видеть и как аналитик данных или бизнес [01:35:21] аналитик, в котором вы работаете в страховом секторе вам необходимо увеличить объем продаж на 10%. Вам нужно увеличить объем продаж вырастет на 10% в следующем квартале. Как Вы это сделаете? Итак, что вы будете делать в качестве... Все аналитики данных? Да, вам нужно [01:35:35] Информация о предыдущей продаже. Вы можете получить несколько деталей товара, клиент подробности. После сбора данных здесь, Теперь тебе нужно заняться анальным сексом и э-э. извлечь нужные вам данные Данные с сервера? Вам нужны данные? [01:35:51] из определенного отдела или вы хотите данные извне? Правильный. Теперь ваша очередь приступит к извлечению этих данных из Куда вы извлекаете данные с сервера или облако? Верно? Не всегда у вас будет Ваши данные могут быть сохранены на сервере. [01:36:03] облако. Вам нужно получить данные из Там было облако. После того, как у вас будут данные Если вам нужен какой-либо инструмент бизнес-аналитики, то смело используйте его. визуализировать, анализировать, прогнозировать. спрогнозируйте это сейчас, когда это произойдет, то произойдет там. Итак, где используется SQL? [01:36:17] SQL используется повсеместно. Мы извлекаем данные с сервера. помните, что, как мы уже установили Во-первых, SQL — это язык, который [01:36:29] Используется практически во всех программах. Если это так Если это не SQL, то будет SQL-подобный язык. использовал. Таким образом, это здесь закладывает основу для понимать и учиться, чтобы вы могли извлечь данные с любого сервера [01:36:42] Вам предстоит столкнуться с этим. Хорошо. Согласно Обсуждение, верно? Так вот, это там есть. Это называется DSA (Daily Story Analysis). Есть нечто, называемое DSA. Что такое DSA? здесь? Это ваш источник данных. администрация. Это делается с помощью базы данных. [01:36:55] инженеры или разработчики. Верно? Эти инженеры или разработчики... Эти инженеры или разработчики... на самом деле, давайте, и они... э-э... Подключитесь, смотрите, здесь это называется данными. администрирование источников, хорошо, сначала они [01:37:09] свяжет необработанные данные, это возможно. это может быть что угодно, э-э, это может быть что угодно другое. база данных, а также веб-сайт, это может быть и база данных. Это может быть файл, и это может быть любое облако: AWS, Azeroth или другое. Нет ли вашего облачного сервиса Tableau в сети? любое облако или любой портал, который вы [01:37:25] У парней есть право находиться в вашем офисе. Это сообщу об этом всё, а затем оно выполняет Здесь представлен фактический ETL-процесс. Это может быть ваш Tableau. Это может быть ваш SQL-сервер, это может быть Для этого можно использовать Oracle или Python. [01:37:39] Сначала извлеките все сырые материалы. оттуда берутся данные, и вы можете продолжать. Реализуйте эту идею в своем SQL-запросе. Затем Они создают модель данных. Что делает кто что? Не все из нас являются инженерами баз данных. Эти инженеры определят данные. [01:37:53] модель означает, какие таблицы имеются, Какой общий столбец там должен быть? или их следует нормализовать или денормализованы ли они, следует ли их смешивать Вместе или порознь. Они построят модель данных, которая создаст всю [01:38:06] структура базы данных, а затем Управление данными – это прикладное понятие. Применяются меры безопасности. уровень Роула безопасность, безопасность на уровне столбцов, э-э метаданные — это ваша информация о база данных и первичные ключи, [01:38:18] ограничения, препятствия, всё так или иначе установить. Безопасность в соответствии с требованиями пользователя будет внедрено. Разные слои будут приняты в целях безопасности. И после что профилирование данных произойдет. Они Проведет проверку отделения неотложной помощи. Они будут [01:38:31] Убедитесь, что Profine работает корректно. А затем в конце они пойдут дальше. и они опубликуют эти данные. Набор для всех. После публикации этого Теперь они будут этим заниматься. обновить его и позаботиться об этом один раз [01:38:45] Если все сделано, тогда мы приступаем к делу. Э-э, всё можно взять здесь. Вам не нужно узнать об этом. Это делается на бэкэнд. Что нас беспокоит что у меня есть база данных. Теперь в В моей базе данных столько-то таблиц. я [01:38:59] Мне нужно решить, как мои клиенты... делает. Итак, как мне написать запрос, чтобы... что мы можем приступить к извлечению... данные. Хорошо. Таким образом, вся эта структура здесь представляет собой огромный и в нем обучается множество людей. [01:39:16] В этом процессе работает несколько человек. Так Давайте быстро подведем итоги. Давайте... Давайте вкратце рассмотрим наш интерфейс. Прямо внутрь Этот интерфейс здесь — это меню. выпадающие списки. Это выпадающие меню. Это наша панель быстрого доступа. Один раз [01:39:30] Мы открываем его, у нас уже есть предыдущий. Первый день прошел отлично. Правильный. Сейчас Сегодня здесь один человек, и это наш. схемы. Вот эти схемы. Как Здесь две вкладки. Один из них – это администрирование, а другой – администрирование. [01:39:44] Один из них — схемы. Нам нужно просто нажать Используйте его для переключения между ними. Верно? Схемы и базы данных. Эта терминология В MySQL этот термин используется как синоним. [01:39:56] Хорошо. Теперь мы узнали о Сначала оставьте комментарий. Почему мы узнали об этом Вот это. Например, получить доступ к базе данных — это комментарий. Что такое комментарий? комментарий неисполняемая часть, потому что кто-то спросили, почему мы их используем. [01:40:11] символы это не символы это обозначения хорошо, мы общаемся с SQL-запросы показывают, что это не команда. Это не приказ, потому что если я не... ввод знака фунта или дефиса Вот оно... а что оно думает по этому поводу? [01:40:27] Вся эта часть — это команда. Вся эта часть представляет собой команду, которая не является Вот почему мы должны двигаться дальше. и либо мы напечатаем второй тип дефисы и пробел для указания SQL, что Смотрите, это комментарий. Что такое [01:40:42] комментарий? Комментарий — это любой вид комментария. описание, которое мы собираемся написать. Так как Поймите, почему комментарии необходимый. И когда мы пишем прямой заявление, хорошо, нам не обязательно давать любой символ прямо здесь мы можем напрямую [01:40:56] Начните писать комментарий. Все в порядке. Когда мы приступаем к написанию заявления Здесь или здесь можно отдать команду. Это означает, что мы даем команду моему SQL-запросу сделать следующее. база данных. Давайте посмотрим, как нам двигаться дальше. И получите эти классические модели прямо здесь. [01:41:10] Итак, переходим к выпадающему списку файлов. Мы кликаем при открытии SQL-скрипта. Давай, узнай, где твой... Образец базы данных MySQL загружен. [01:41:22] Где бы оно ни находилось, где бы оно ни было загружено. выберите вашsql файл здесь. У вас может не быть Там написано расширение, но вы его найдете. Найдите этот dossql, потому что это он. Он будет искать только этот файл. Как только вы [01:41:36] Найдёт файл, где бы он ни находился. Перейдите по ссылке и нажмите «Открыть». После того, как вы нажмете При открытии вы увидите еще одну вкладку. открылось. Верно? Как только вы увидите Здесь открылась еще одна вкладка, можете начать. выполнить это. Как мы это здесь реализуем? [01:41:49] Мы держим курсор внутри. Мы идём к Выберите пункт «Выполнить запрос» в выпадающем списке и нажмите «Выполнить на». Хорошо. Просто удерживайте курсор здесь. где угодно. Неважно, где. Перейти к Выберите нужный запрос в выпадающем списке и выполните все запросы. Ты можешь см. сочетание клавиш Control Shift [01:42:03] входить. После выполнения всех действий подождите 5 минут. до 7 секунд, а затем нажмите Обновите страницу прямо здесь. Нажмите «Обновить». Здесь находится кнопка обновления. Обновить Схема, и вы найдете классический модели прямо здесь. Вы можете развернуть [01:42:19] Здесь есть столы. Вы увидите список. Только Ниже вкладки «Файл» находится... Плюс значок SQL чуть ниже вкладки «Файл». Итак, давайте откроем файл с датой 2. Так что смело нажимайте здесь на кнопку "плюс SQL". Когда вы нажмете здесь на значок плюса/SQL, вы [01:42:34] файл откроется в Следующая вкладка прямо здесь. Первое, что Мы здесь делаем следующее: мы спасаем его прямо от здесь. Там вы найдете небольшой панель быстрого доступа находится прямо под вашим скриптовый файл. Это снова небольшой быстрый пост. [01:42:48] панель инструментов доступа. Вот здесь у нас значок сохранения. Вот здесь у нас значок сохранения. Итак, после того, как я нажал на кнопку "плюс SQL", я выполнил следующее: Итак, после того, как я нажал на кнопку "плюс SQL", я выполнил следующее: Нажмите здесь, чтобы сохранить. Он [01:43:00] Сохранение откроет очень знакомое диалоговое окно. Здесь поле. [01:43:22] После добавления и сохранения. Да, файл спасен. Здесь мы работаем. Очень хороший. Итак, это результат наших действий. Произошло слишком много избыточного производства. Теперь смотрите Здесь результатом будет файл, потому что у нас есть были реализованы классические модели. Если ты хочешь [01:43:35] Чтобы очистить вывод здесь, вы можете перейти по адресу: выход. Щелкните правой кнопкой мыши здесь и очистите. Так если перейти в окно вывода действий Всем привет, хорошо, если их слишком много... Здесь находятся строки вывода, вы можете их правильно записать. Нажмите и очистите. Так что теперь, когда мы [01:43:51] Напишите любой новый запрос, и мы сможем Легко определить результат. Если сказать В выходных данных что-то есть, верно? Нажмите и очистите. Пока вы этим занимаетесь, давайте продолжим. и обсудим сегодняшнюю повестку дня. Так что... [01:44:04] мы уже видели, как это делается. создадим базу данных, и мы сможем приступить к работе. SQL-запросы импортированы, верно? Мы импортирован файл data.sql. Мы также можем пойти Давайте импортируем CSV-файлы! Мы Также можно импортировать CSV-файлы. [01:44:17] Итак, что же мы сегодня увидим? Сначала давайте посмотрим, как Сначала давайте посмотрим, как Как правильно импортировать CSV-файлы? здесь. Далее мы перейдем к следующему этапу. Э-э, посмотрите, мы видели, создавали и показывали. [01:44:31] Но сегодня мы поговорим о первый тип данных в SQL, но нам нужно Разобраться в типах данных в SQL. После Понимание типов данных здесь необходимо. мы продолжим отбор запрос. Что же такое запрос SELECT? Почему, э-э [01:44:47] Какова последовательность выполнения запроса SELECT? там? Какова синтаксисная структура этого? Мы Поймёт, что такое запрос SELECT. Итак, сначала нужно импортировать CSV-файл, а затем... Изучение типов данных в SQL. Этот Это наша сегодняшняя повестка дня. У нас есть [01:44:59] Первая база данных здесь, которая пуста? Это В нём нет абсолютно никаких столов. Итак, теперь Давайте импортируем CSV-файл. Так в рамках набора данных о практике с поддержкой В папке с уроками находится следующее: Столик для сотрудников. Есть сотрудник [01:45:12] стол. Таким образом, оно находится внутри набора данных. папка. Внутри папки с набором данных вы найдете папка. Внутри папки с набором данных вы найдете У вас должна быть папка с документами, относящимися к услугам ассистентов врачей. Там указан номер урока. пять. В этом файле содержится один CSV-файл. [01:45:25] Таблица сотрудников в формате CSV. Итак, приступим. и импортировать эту таблицу в наш База данных здесь. Как нам это импортировать? Мы Щелкните правой кнопкой мыши по столам (все). Щелкните правой кнопкой мыши и выберите четвертый вариант. Мастер импорта данных из таблиц. Перейдите в [01:45:39] Четвертый вариант: мастер импорта табличных данных. Сначала переходим к таблицам базы данных и таблицы. Хорошо, пустая база данных. что у нас было что у нас было здесь. Перейдите к таблицам, щелкните правой кнопкой мыши и [01:45:53] Мастер импорта данных из таблиц. Когда вы нажимаете Что представляет собой мастер импорта данных в таблицу в мастере импорта? Вы смотрите на это? Это диалоговое окно здесь: предлагает нам посмотреть. Итак, давайте нажмем на предлагает нам посмотреть. Итак, давайте нажмем на Просмотрите здесь и найдите свою базу данных. [01:46:06] Просмотрите здесь и найдите свою базу данных. пожалуйста. установить папку практический урок 5 трудоустройство [01:46:27] будет здесь. После этого просто продолжайте. нажав кнопку «Далее». Ничего не делайте. Держать нажимайте кнопку «Далее», пока не дойдете до Кнопка "Завершить". Поэтому нажмите «Далее». Кнопка "Завершить". Поэтому нажмите «Далее». здесь. Без изменений. Нажмите кнопку «Далее» еще раз. [01:46:41] здесь. Без изменений. Нажмите кнопку «Далее» еще раз. Без изменений. Нажмите кнопку «Далее» еще раз. Мы... Без изменений. Нажмите кнопку «Далее» еще раз. Мы... Это предназначено только для нашего ознакомления. Абсолютно. Вам не обязательно это делать. Здесь есть всё. Просто нажмите «Далее» еще раз. [01:46:54] После того, как оно будет выполнено должным образом, оно... Просто проверьте это сами. Затем нажмите на следующий раз. Вам будет показано, что импортировано 20 записей. Затем нажмите «Готово». Поэтому продолжайте нажимать кнопку «Далее», пока не увидите... [01:47:08] Импортировано 20 отчетов. Как только вы это увидите Там просто снова нажмите «Готово». Верно? Итак, на данный момент мы импортировали CSV-файл. каждый. Теперь мы хотим посмотреть, какого рода Это стол. Как нам двигаться дальше? Посмотрите на таблицу прямо здесь, чтобы увидеть [01:47:21] Столик здесь? Наведите курсор сюда и вы найдете три серых цвета и вы найдете три серых цвета иконки. Информационные настройки здесь и Здесь снова стол с доской. Так Перейдите к третьему значку, таблице с [01:47:33] Выделите этот значок жирным шрифтом и нажмите на него. Когда ты Нажмите на него и посмотрите, что произойдет. Когда Нажмите на него и посмотрите, что произойдет. Когда Вы кликнете на него и посмотрите, что произойдет. [01:47:47] здесь? Открывается новая вкладка и отправляется запрос. написано для вас. Правильный. И что теперь? выбрано здесь. Верно? Правильно в таблицы и столбцы, строки и столбцы здесь. Это идентификационный номер сотрудника, имя, фамилия, пол, должность, отдел и [01:48:03] Всё остальное находится прямо здесь. Мы можем Видишь это здесь, да? И кем мы станем сосредоточившись на написанном запросе для нас. Посмотрите, что здесь написано. Выбирать из базы данных P, которая является первой базой данных. имя базы данных и имя таблицы указаны верно. [01:48:18] заканчивающийся точкой с запятой прямо здесь. Так что же это такое? второй день. Не забудьте вернуться к дневному времени. два. Все помните, что нужно переключиться обратно. здесь. Как работает этот запрос SELECT? Как это выглядит? Что это за астра здесь? [01:48:34] То есть все колонки. Хорошо. Что это такое? Что это значит? Нам нужны все эти колонны. если это значит, то выберите все Откуда взяты колонки? Из первой базы данных. [01:48:46] Внутри первой базы данных перейдите к таблице. Поэтому нам нужно указать полный адрес. Здесь, в полном тексте адреса. Во-первых мы указывая адрес базы данных, который ведет на это. база данных. внутри этой базы данных перейдите и получить все столбцы этого [01:48:59] конкретная таблица. Итак, мы... разговариваем Здесь это изложено очень простым языком. Хорошо. Так Если кто-нибудь спросит, вот мы здесь. ужинать, если спросишь кого-нибудь, спроси... спросите кого-нибудь, можете ли вы это сделать? Продолжайте. и [01:49:13] принеси мне соль и сахар из кухня. Всё очень просто. Так они и сделают. вернет его вам. Либо вы можете Выберите все или выберите то, что вам нужно. Вам это нужно. Итак, вот полный адрес. прямо там. Давайте начнём и [01:49:28] Поймите, как это работает. в реальном времени. Итак, мы будем работать над классические модели, все правы. Так что, э-э, в в этой конкретной таблице я Хотел бы, чтобы вы понаблюдали за этим сотрудником. [01:49:40] ID имя фамилия пол роль отдел какой тип какой тип Данные — это текст, и все они — текст. будь то алфавит, буквы, цифры, это Это будет текст, и большую часть времени Мы держим текст, давайте начнём [01:49:57] Мы держим текст, давайте начнём Изучите требования к опыту и зарплате. Рейтинг сотрудников – это всё цифры. Итак, начнём с типов данных в SQL. Разрешите Скопируйте и вставьте это сюда. Итак, первый тип Здесь данные всегда представлены в текстовом или ином виде. [01:50:11] характер. В большинстве случаев размер — это размерная деталь, которую вы выяснится, что происходит, что вы собираетесь найти в текстовом формате или текстовых данных тип. Тип данных «Текст» иногда также называется символом или строкой. В [01:50:27] SQL: как определяются эти типы данных? SQL. Здесь определены эти типы данных. [01:50:39] Это машина. Что это за машина здесь? Автомобиль означает Символ фиксированной длины. Автомобиль означает символ длиной в пиксель, который в целом Длина будет примерно одинаковой. Что такое Под фиксированной длиной здесь подразумевается что-то другое? В фиксированном длина имени любой тип идентификатора или уникальный [01:50:53] код или уникальный идентификатор, который мы предоставляем. Для например, идентификатор сотрудника — это... идентификатор сотрудника — это... зафиксированный. У каждого будет либо альфа-самец числовой идентификатор сотрудника. Это будет... э-э... может содержать шесть символов, или может Имеют семь или десять символов. [01:51:07] Символ означает любой код или идентификатор. дано. Идентификационный номер сотрудника для всего персонала. Организационную структуру исправят. Если есть Идентификатор продукта будет стандартизирован или любые коды ошибок или коды неисправностей если у нас есть в течение операционного цикла [01:51:19] которая также будет иметь фиксированную структуру и формат. Хорошо. Так что это характер, подобные столбцы определяется характером. Далее вот что определяется характером. Далее вот что где. Что здесь находится? Очень просто. ВКА [01:51:31] имеет переменную. Что подразумевается под переменной? имя? Название чего угодно. Имя что-либо. Название города, продукта, э-э имя человека, фамилия, страна, Что бы там ни было. Вот где означает переменную длину. Что такое [01:51:47] Здесь переменная длина — это любые данные, которые мы собираются писать в нескольких строках. мы не можем сказать, что они Длина всегда будет одинаковой. Нет У всех одинаковые имена. Не каждый Название города похожее. Нет фиксированного значения. [01:52:00] формат для этого. Таким образом, у него будет переменная длина по рядам. То есть почему это ценно. У нас есть больше текстовых материалов. нить. Но это наиболее часто используемые. те. Затем у нас есть числовой. В числовом представлении здесь сначала целое число. [01:52:14] Это целое число. Что будет дальше? Пример целого числа? Целое число. Какие данные будут представлять собой целые числа? без десятичной дроби? Целое число может быть количеством проектов. Тот, кому назначено целое число, может [01:52:29] количество автомобилей, припаркованных на определенной территории Иногда мы ищем только... целое число возраст количество в Инвентаризация верна, это также то, что [01:52:41] также является целым числом, показывающим, какое количество мы Все распродано. Сколько всего сотрудников? Сколько человек было принято на работу в этом месяце и сколько вышло на пенсию? количество бракованных изделий количество бракованных изделий Дефекты в изделии могут проявляться в виде отметок. Десятичные дроби не всегда являются целыми числами. Так [01:52:57] Это лишь несколько примеров целого. Число в норме в режиме реального времени. Теперь у нас есть плавающий или двойной. Так что либо мы это называем плавающий, или, как мы его здесь называем, двойной. Да Не волнуйтесь, мы все учимся. Итак, вот это Правильно ли использовать плавающий или двойной код? Что такое поплавок? [01:53:12] или вдвое? Вот оно, с десятичными знаками. или дроби. Так что, может быть, мы... дайте мне Примеры десятичных дробей и обыкновенных дробей каждый. Какой тип набора данных может быть в десятичном виде или в виде дробей? Верно? Сказать прибыль любого вида непрерывных числовых [01:53:27] переменная с большим числом вне там. Это будет плавающий или двойной вес. Но У нас здесь есть еще один тип, который называется десятичная дробь. Что такое десятичная дробь? Это значит снова Число с десятичной дробью или обыкновенными дробями. Снова с десятичными дробями и обыкновенными дробями. Затем [01:53:42] В чем же тогда разница между с плавающей запятой и десятичной дробью? Если оба Числа записываются с десятичными дробями или в Дроби, верно? Это снова основано на где мы впервые его используем? Плавайте здесь. Хорошо. э-э, здесь, на плавучей платформе [01:53:57] мы используем тип данных float или double. всякий раз, когда мы работаем с чем-то подобным везде, где это возможно, округляя десятичную запятую. везде, где это возможно, округляя десятичную запятую. где мы можем использовать округление до десятичной дроби правильные ценности, чтобы мы могли иметь, например, [01:54:13] мы пишем здесь 45 допустим — Вот несколько вариантов, если получится. Округлите до 45,9, только я могу продолжить. и запишите это, например, с числом 35,9, тогда Я могу это написать, потому что я [01:54:28] Можно округлить до целого числа, или я могу просто избавиться от этого. там лишних десятичных знаков, и это это никак не повлияет на мой последний отвечать. Какие существуют ценности? Где мы можем работать таким образом? Любой вид математическое статистическое значение [01:54:43] рассчитывается как ваше среднее арифметическое, среднее арифметическое. медиана, мода, стандартное отклонение, дисперсия, вероятность. Когда бы вы ни находились приступить к вычислениям любого рода Вот такие ценности, правда? И если у нас есть слишком много десятичных знаков в конце, мы можем [01:54:57] Скруглить или отрезать — это нормально. Не нужно слишком много десятичных знаков. Давайте сократим их до одного или двух. В том В данном случае мы используем float или double, где Мы здесь не задержимся. Мы можно округлить. Тогда где же мы это используем? [01:55:10] десятичные дроби? Здесь мы используем десятичные дроби, где мои Десятичные числа фиксированы и не имеют значения. В случае чего мы не сможем двигаться дальше? просто скруглите или, э-э, отрежьте. там. Какие примеры можно привести в данном случае? я Приведу очень простой пример. [01:55:27] Приведу очень простой пример. Хотели бы вы, чтобы кто-нибудь завершил ваш... Вознаграждение за проделанную вами работу? Нет. То есть, когда люди действительно пишут. э-э, любые виды бухгалтерского учета и финансов. данные, верно? Они не округляют это. [01:55:42] Они сохранят все десятичные знаки. Правильный. Любой вид комиссии расчет, расчет заработной платы, базовый любой расчет, основанный на любом виде В бухгалтерских отчетах они все не округляют. Верно? Здесь и находится тип данных. [01:55:55] придёт. Теперь вы также найдете там Существует множество других типов данных, например, большие объемы данных. целое число э-э, маленькое целое число среднее целое число крошечное целое число, основанное на длине целое число существует, и вы его найдете. более. Итак, когда мы действительно встретимся? [01:56:08] более. Итак, когда мы действительно встретимся? мы увидим множество разных числовые значения или числовые типы данных там. Затем у нас есть дата и время. Сейчас Где можно найти дату и время? Так что в Здесь, конечно же, можно продолжить. [01:56:22] и введите дату отдельно. Мы можем идти Время вперед и время набора текста раздельно. Из также должны быть указаны дата и время. нас. Таким образом, у нас либо есть отметка даты и времени. [01:56:34] Здесь или здесь у нас есть только отметка времени. Это повсеместно принято. Хорошо. Ещё один стандарт здесь — ваш год. следует написать отдельно, потому что иногда, если это данные временного ряда, У нас останутся только годы. Теперь годы могут быть [01:56:48] либо в двухзначном, либо в четырехзначном формате формат. Это тоже правда. Вот так мы и поступаем. Также напишите об этом в контексте повседневной жизни. Однако, В MySQL формат даты фиксирован. В В MySQL формат даты фиксирован. Итак, если Вы импортируете CSV-файлы или просто... [01:57:04] э-э, вставляя данные f внутрь него, Правильно, формат должен быть год, месяц. и дату. Если ваши данные записаны следующим образом это внутри двойных кавычек или там одинарные кавычки, только тогда это сработает воспринимайте это как дату и время как дату. [01:57:19] и времени. Время — час, минута и секунд. аналогично Excel. Э-э, если мы захотим Пожалуйста, и мы не будем ставить пробелы. Что угодно существует. Хорошо. Так Опять же, это будет считаться свиданием. и времени. Вам нужна только отметка времени. [01:57:34] секунд. Это будет выглядеть вот так. И два формат года (цифровой или четырехзначный) мы все Поймите, что это 25 или 2025 год. Вы можете Напишите что-нибудь подобное. Итак, это вещи, о которых я хотел бы напомнить каждый. всегда и команда с [01:57:50] Точка с запятой, верно? А если вы хотите пойти и выполнить определенное утверждение. верно? Тогда можете смело печатать. вы можете просто приступить к выполнению. [01:58:02] удерживая курсор на этом месте и нажимая контролируйте или вводите. Хорошо. Так что все в контролируйте или вводите. Хорошо. Так что все в скрипт или выбрать или я напишу или здесь для уточнения или [01:58:16] выберите текущую выписку или оставьте свою курсор там и выйти для выполнения. Вы также можете пойти а затем нажмите Ctrl и Enter или Мы можем использовать эти молнии прямо сейчас. здесь. Используйте вторую молнию для [01:58:32] одно утверждение. Мы используем первую секунду Теперь мы уже знаем, как создать база данных. Мы убедились, что нам необходимо Создайте базу данных, и мы сможем присвоить ей имя. там. Мы можем приступить к показу [01:58:45] базы данных тоже. Верно? Есть один очень Важная вещь, которую нам следует знать. Важная вещь, которую нам следует знать. Регистр ключевых слов не имеет значения. Только ключевые слова, которые мы используем, например, создание база данных и многое другое. Это не так. [01:58:57] чувствительный. Все в порядке. Итак, сколько? Какие базы данных у нас сейчас есть? серверу увидеть, что мы просто пойдем и введите show, когда введете sh. Шоу с разворотом началось, мы можем начинать! Перейдите вперед и выберите выставочное пространство, которое вы ищете. [01:59:12] ищем базы данных, поэтому мы печатаем Здесь находятся базы данных, и на этом мы завершаем заявление. точка с запятой здесь сейчас смотрите здесь Когда курсор здесь мигает, я хочу Для выполнения этого оператора нажмите контролировать, входить или просто продолжать. [01:59:26] Нажмите на этот режим молнии прямо здесь. почему я объясняю это так... очень подробно сейчас, потому что у меня есть был задан этот вопрос в начале занятия. [прокашливается] покажи это снова как это выполнить, вот почему, так что... я [01:59:41] Вы понимаете, как выполнить...? напишите оператор, который будет выполнен. пожалуйста Теперь вот этот временный результат, который у нас есть. Прямо сейчас у нас его можно экспортировать в CSV — вот как вы получаете CSV-файлы в любое время. [01:59:56] вы просите свою организацию дать мне данные. Вот откуда вы получаете ваши CSV-файлы. Таким образом, мой SQL-запрос экспортирует данные в CSV, верно? Так что, если вы хотите, чтобы это было экспортировано, можете смело задавать этот вопрос. экспортируйте это в CSV-файл [02:00:13] ваш HTML, JSON, Excel, что угодно Если хочешь, ты можешь это получить. Это ваш временный отпуск. А теперь вот что дальше Мы можем пересечь его и закрыть. У нас есть [02:00:27] Здесь знак креста, здесь буква X, верно? Мы Можно закрыть его прямо здесь. Теперь дайте мне знать Давайте двигаться дальше и узнаем о Запросы выбора. Давайте учиться! Информация о запросе SELECT здесь. Когда мы Речь идёт о запросе SELECT, верно? Сейчас [02:00:41] мы говорим о чтении, чтении набор данных или получение набора данных. Верно? Существует последовательность написания. Существует последовательность написания. Ты Помните операции SQL? Первый Получить таблицу. Но я хочу выбрать [02:00:57] отфильтруйте столбцы и строки. Возможно, это зависит от страны или кредитного лимита. Затем я хочу отсортировать набор данных. Так Первый вариант, который у нас здесь есть, это выбирать. Здесь мы пишем последовательность. Во-первых, выбирать. Функция «Выбрать» поможет нам сделать выбор. [02:01:12] столбцы. Верно? Если я хочу выбрать столбец здесь, тогда я смогу использовать get me Идентификационный номер сотрудника, имя сотрудника и так далее. Но если мне нужны все столбцы здесь, что делать? Мы это делаем? Если мне нужны все столбцы, то что? Мы пишем? Да. Очень хороший. Мы продолжаем. [02:01:26] и завидовать ограничениям. После выбора Здесь нам также нужно указать мой SQL-запрос. Откуда мы это возьмём? Итак, второй Ключевое слово, которое мы здесь используем, — «из» и об этом. Какой здесь адрес? Адрес — это первый адрес, а затем идут имена схем. [02:01:41] Сначала вы пишете имя своей схемы или Название базы данных. Все в порядке. Затем мы набираем точка там или точка там, а затем мы Давайте укажем название таблицы. Мы уходим Далее мы вводим название таблицы. Итак, мы указывают полный адрес. [02:01:56] указывают полный адрес. там. Хорошо. После этого, после этого Здесь, если мы хотим продолжить, подайте заявку. К любому фильтру применяется пункт о допустимом износе. Этот Условие "где" поможет нам использовать приложение для оказания помощи. нам для фильтрации строк из базы данных [02:02:11] непосредственно в базу данных. Это будет применено фильтрация строк изнутри база данных. Вот пункт, где это находится. Теперь, после пункта "где", у нас есть еще кое-что. варианты здесь, дополнительные ключевые слова здесь после где это строка, упорядоченная по и [02:02:26] лимит. Функция сортировки упорядочивает ваши данные. Сортировка поможет вам решить этот вопрос. верно. Какой предел здесь подойдёт? Лимит это ограничит количество строк и [02:02:38] выход. Количество строк и результат. Таким образом, мы видим временный результат. у них есть право на экспорт. Если вы хотите увидеть только пять строк 10 строк это будет Просто ограничьте это. форма определяет источник данных, которые мы хотим получить. [02:02:51] данных, которые мы хотим получить. Да, можно так сказать. Итак, мы есть конкретный контейнер. Внутри этого контейнер, это справка. Итак, давайте верно? А затем мы двинемся дальше и Усвойте это. Для начала давайте начнём с малого. [02:03:05] с помощью select и from у нас есть классический Здесь же есть модели, верно? Итак, как это сделать? здесь? Теперь мы это прекрасно понимаем. легко. Нам нужно написать select. У нас есть чтобы определить, хотим ли мы использовать несколько столбцов или [02:03:19] Здесь одна колонка, а затем мы зададим этот вопрос. для выбора определенных нами столбцов из Название схемы указано прямо здесь. Вот как это Синтаксис выглядит так. Итак, давайте начнём. и напишите это здесь. Мы собираемся написать Здесь выберите. [02:03:35] Я выбираю из выпадающего списка. Давайте теперь получим все столбцы. потому что мы не знаем, как это происходит таблицы есть. Выберите все из списка. Здесь я просто печатаю и выбираю. из выпадающего списка, откуда классический [02:03:49] модели. Итак, мы хотим напечатать здесь C L A Посмотрите, есть ли в наличии классические модели. В выпадающем списке указано, что это схема. Выберите его с помощью клавиши Tab или двойным щелчком мыши. по этому поводу. Я выбрал это. Теперь мы хотим для определения таблицы. Итак, мы нажимаем на... [02:04:03] Мы наверху... нажмите на точку там. Введите точка там или знак пер. Вы увидите список таблиц внутри него. Итак, давайте Посмотрите прямо сейчас на столик с клиентами. Это первая таблица здесь. Нажмите на Нажмите клавишу Tab или дважды щелкните по нему, и оно откроется. [02:04:15] там. Теперь поставим здесь точку с запятой. После того, как вы поставите точку с запятой, нажмите клавишу Control. После того, как вы поставите точку с запятой, нажмите клавишу Control. Введите или нажмите здесь. После того, как вы нажмете Здесь вы найдете всего клиента. Таблица здесь. Также посмотрите на результат. [02:04:27] здесь. В сообщении говорится, что возвращено 122 строки. Это означает, что во всем этом наборе данных у нас есть Получено 122 строки. Выберите его из падать. Не пытайтесь набирать текст. люди. мы сделаем эти орфографические ошибки Совершать ошибки очень легко. В настоящее время мы [02:04:43] Получение всех столбцов. Хорошо. В настоящее время мы Получают все столбцы. Итак, далее мы посмотрим, как... выбрать только один столбец. Выбирайте только [02:04:55] выбрать только один столбец. Выбирайте только там один столбец из набора данных. Как столбец? Если мы хотим продолжить, Выберите только один столбец, мы введем текст. выбирать. Все в порядке. А давайте посмотрим с... Здесь находится стол с клиентами. из [02:05:07] Здесь, за столом для клиентов, мы просто хотим... Получаем только имя клиента и ничего больше. Хорошо, в таком случае, что же нам делать? не буду продолжать печатать этот столбец. имя абсолютно неприемлемо, давайте воспользуемся графический интерфейс здесь, когда [02:05:23] Здесь вы расширите клиентскую базу, и... Вы осознаете, что у вас сейчас есть колонки, когда... Разверните столбцы, и вы сможете Чтобы просмотреть все названия столбцов, перейдите сюда. Хорошо, как только вы сможете просмотреть все Названия столбцов прямо здесь, если я захочу. [02:05:37] Введите здесь любое имя столбца, нам нужно Просто дважды щелкните. Нам просто нужно дважды щелкните по этому. Как только вы это сделаете дважды щелкните по этому, и это произойдет. автоматически вводит это в скрипт. Первый [02:05:49] все расширяются, расширяются, расширяют охват Здесь указаны названия столбцов, относящихся к клиентам. Сейчас после выбора здесь, когда курсор находится моргает, я собираюсь дважды щелкнуть по Имя клиента отображается здесь. Откуда же нам это нужно? Так мы и сделаем [02:06:02] тип снова. Мы попросим его перейти к классические модели снова и из классики модели снова будут обращаться к клиентам, и это будет Нам нужно получить только один столбец. Аналогичным образом, если мы захотим несколько столбцов аналогичным образом [02:06:16] если мы хотим, чтобы было несколько столбцов Получили данные, что нам делать? Мы продолжаем и Снова введите select, и на этот раз мы выполним Просто дважды щелкните по нескольким столбцам. Например, дважды щелкните по клиенту. имя. [02:06:29] страна. Далее, возможно, я буду интересоваться их кредитной историей. Здесь установлен лимит. Поэтому продолжайте ставить запятую здесь. И у нас всё хорошо. После этого я снова смогу Скопируйте и вставьте отсюда. Зачем писать это снова? Так что скопируйте и вставьте. [02:06:45] это. Мы можем вставить это в другую строку. также. Почему? Потому что вы его прекращаете. здесь. Таким образом, оно понимает, что если не увольнение не происходит, и все это... одна-единственная команда. Так что, если я продолжу мой курсор прямо здесь после того, как я это напечатал [02:07:00] в двух строках, и я выполняю прямо здесь. Вы обнаружите, что у нас есть имя клиента. Информация о стране и кредитах здесь. Первая попытка Выведите это в один столбец, затем поставьте запятую. и попробуйте это для нескольких столбцов. Мы используют здесь знак хэштега, чтобы сообщить [02:07:16] SQL-запрос подтверждает, что это комментарий, который я пишу. Это не комментарий, который следует исполнять. Это Это ведь не команда, которую нужно выполнить, не так ли? Это сообщение, которое я здесь пишу для наше собственное понимание. Мы используем хэштеги или дефисы. Номер вопроса [02:07:30] Зачем оно там? Что такое комментарий? Почему Нужен ли он нам? Потому что нам нужно различать команду и просто послание, написанное для нас самих понимание. Это сообщение написано для нашего собственного понимания. SQL этого не делает [02:07:43] Это необходимо. Все в порядке. Итак, теперь у нас есть один столбец и несколько столбцов. Позвольте мне кое-что вам показать. Всякий раз, когда мы пишем это здесь, это Вот как мы пишем. Хорошо. Но там Это один из способов его напечатать. Это не [02:07:55] функциональный язык, но у него есть Формат, который нужно будет написать, поскольку мы новички. А мы этого здесь не знаем. Так что вперед! и выберите конец, выберите эти и выберите конец, выберите эти Здесь две строчки, и можете нажать на [02:08:09] кисть для улучшения внешнего вида. Что это такое? Это Кисть для улучшения внешности или, э-э, вот здесь есть сочетание клавиш. Это клавиша Ctrl+V. Так что можно улучшить внешний вид или... Назовем это переформатированием. Это украшает или Назовем это переформатированием. Это украшает или здесь переформатировать [02:08:27] отдельно, иным образом в правильный функциональный язык. Так вот, видите ли Вот как это выглядит после украшая его. Поэтому я выберу всё это целиком. Нажмите клавишу Command и щелкните по этой кисти. [02:08:40] После того, как я нажму на кисть, произойдет следующее: Как это выглядит. Выберите правильно Как это выглядит. Выберите правильно имя с пробелами и правильно расположенные пробелы Адрес указан прямо здесь. Хорошо. Э-э, вы этого не делаете. У нас есть база данных под названием employee. [02:08:54] стол. Извините, у вас нет базы данных. называется первой базой данных. Это Так это и должно быть написано. Который из Выглядит лучше? Первый или второй? Первый Мы это напечатали. Вот как это произошло. облагораживает и пишет это. Который из [02:09:08] Выглядит лучше? Верно. Абсолютно. Он Второй вариант здесь выглядит лучше. Верно. Однако лучше почитать. Если я Пересмотрите этот конкретный сценарий. тогда нам будет легче читать. и понять. Однако дело не в этом. [02:09:22] и понять. Однако дело не в этом. Легко писать. Поэтому писать здесь легко. Но когда мы захотим вернуться к этому вопросу, вот что... лучший способ это сделать. Просто способ для ты. Если вы пишете текст длиной в два абзаца При отправке запросов всегда проверяйте это. Это будет [02:09:34] легче читать. Итак, позвольте мне также написать Я здесь с вами. Итак, начнём. Я буду Я здесь с вами. Итак, начнём. Я буду попросите его выбрать здесь. Выберите, и мы просто дважды щелкнете по названию продукта дважды щелкните по цене покупки здесь и [02:09:48] Теперь мы знаем, что можем просто скопировать и вставить. от классических моделей клиентов Но нам ведь не нужны клиенты, правда? Мы ищем товар, поэтому нам нужно... заново написать классические модели и получить Здесь мы можем выбрать товары для украшения [02:10:02] Здесь мы можем выбрать товары для украшения и выполним это здесь, и получим отвечать Сейчас здесь есть одна проблема, поскольку Мы работаем с единой базой данных. Все в порядке. Каждый раз, когда мы находимся [02:10:15] классические модели классические модели множество раз. Так как же от этого избавиться? Мы уходим и мы настраиваем эту базу данных. по умолчанию. По умолчанию я вижу это всякий раз, когда спрашивают вас здесь, идите и возьмите [02:10:31] Таблица товаров, иди и возьми... Столик для сотрудников, идите и заберите заказы. стол, какой бы стол я вам ни назвал, Перейдите к базе данных по умолчанию. Как нам установить базу данных по умолчанию? Здесь мы здесь напечатаем текст, используя классический язык [02:10:44] начиная с этого момента. Смысл отсюда и смело используйте только классические модели. в качестве нашей базы данных по умолчанию. Когда мы уйдем и выполните это здесь, наш База данных превращается в базу данных по умолчанию. А как мы узнаем, что это превратилось в... [02:10:58] База данных по умолчанию? Смотрите, я пишу это здесь. Я Выполняю прямо здесь. В тот момент, когда я Выполнение этой задачи приведет к тому, что классические модели превратятся в... смелый. Верно? Другой способ — установить Это по умолчанию. Мы можем щелкнуть правой кнопкой мыши [02:11:12] Здесь и установить в качестве схемы по умолчанию. Так что какое бы имя таблицы мы ни написали, оно Я принесу нам этот стол. Это схема по умолчанию. Здесь вы можете также дважды щелкните по нему и превратитесь в по умолчанию. Например, если я удвою [02:11:25] Нажмите на первую базу данных, она откроется. смелый. Это значение по умолчанию. Если я дважды щелкну Это означает, что это значение по умолчанию. Итак, есть Существует несколько способов настроить базу данных. как D. Это очень простая вещь, которую мы Вы пишете здесь, используя базу данных? [02:11:42] установите это значение по умолчанию и обратите внимание, что Оно превратится в доску, как только мы это сделаем. Сделайте это здесь, если я осмелюсь это сказать. ок, выберите все и допустим, нам нужны заказы из [02:11:55] Поэтому сейчас я не буду вводить название таблицы. Внимательно посмотрите на это сейчас, я не... Напишите здесь название классической модели. Я хочу чтобы напрямую написать здесь название таблицы например, заказы, поэтому, если я хочу Здесь таблица заказов. Я просто пойду сюда. [02:12:10] и дважды щелкнуть даже по названию Таблица, смотрите здесь, выберите все из I не хочу писать классические модели больше нет, потому что это установлено по умолчанию. Мы переходим к заказам и дважды щелкаем мышкой. когда вы дважды щелкнете по заказам [02:12:23] Заказы будут оформлены автоматически. Здесь мы можем закончить точкой с запятой. Выполните это и убедитесь, что заказы здесь. Хорошо, пожалуйста, возьмите это. не написав классические модели, я Жду ваших ответов. Впредь, [02:12:39] Жду ваших ответов. Впредь, Что бы мы ни написали в этом скрипте, верно? Нам не нужно печатать классический текст. модели. Опять же, если вы используете какую-либо таблицу который присутствует в этой базе данных, Как ввести название таблицы? Сейчас, [02:12:51] вместо выбора из выпадающего списка, Теперь мы можем просто дважды щелкнуть здесь. Мы Укажите название таблицы прямо здесь. Наблюдать выбранный здесь материал написан на Здесь выбранные заглавные буквы написаны в меньший корпус. Оба устройства работают исправно. [02:13:03] Почему? Потому что регистр не имеет значения. Мы продолжим, и сейчас посмотрим, как это будет выглядеть. Нужно ли здесь фильтровать строки? Для фильтрации Давайте начнём с этих рядов, э-э... Иметь несколько товаров в наличии. Совершенно верно Теперь мы приступим к получению товара. [02:13:18] Название и закупочная цена. Мы продолжим и Получите название товара и закупочную цену. Однако на этот раз мы получим возможность совершить покупку. цена и название товара. Продукт цена и название товара. Продукт имя. Хорошо. Какие из них ниже? [02:13:32] имя. Хорошо. Какие из них ниже? больше 100. Хорошо. которые ниже, чем 100. Это означает, что цена покупки ниже, чем 100. [02:13:44] модели продукции. У нас это уже есть. здесь. Давайте напишем это еще раз. Итак, мы Вводя текст здесь, выберите. Мы перейдём к столу с товарами. Мы будем Допустим, нужно получить название продукта. [02:13:58] Откуда теперь взять цену покупки? От напрямую с продукцией. Итак, мы дважды щелкаем по продукция. Теперь у нас есть продукция. Теперь, если мы это осуществим, мы Как видите, цена покупки находится прямо здесь. Купить [02:14:11] Цена указана здесь. Ага, понятно Все показатели уже ниже 100. Так что... Все показатели уже ниже 100. Так что... Давайте сделаем так, чтобы было меньше 50. Хорошо. Где бы то ни было Цена покупки ниже 50. Так как же? Вводить ли здесь фильтр? После [02:14:24] Отсюда мы перейдем к набору текста. где пункт где Где находится фильтр, который мы хотим установить? Мы Хочу сказать, что нужно пойти и проверить возможность покупки. цена. Проверьте цену покупки. Итак, мы Можете смело дважды нажать кнопку «Купить». [02:14:39] Можете смело дважды нажать кнопку «Купить». снова цена менее 50. Поэтому мы можем смело использовать Здесь стоит знак "меньше". Таким образом, цена покупки составляет [02:14:51] Меньше 50. 50 — это число. Хорошо. Так Когда мы приступим к его реализации, вот что произойдет дальше. Здесь выполните это, здесь сколько строк? У нас есть прямо сейчас. Изначально у нас было [02:15:03] 110 строк, смотрите здесь, изначально у нас было 110. После фильтрации у нас остаётся только 48 рядов. У нас всего 48 рядов. Смотрите здесь. [02:15:21] Да. Если у меня всего 48 строк, то можно ли... Скажите мне, где из этих 48 мы окажемся? Имеет самую высокую закупочную цену? Который Какой у товара самая высокая закупочная цена? К Чтобы найти самую высокую цену покупки, нам нужно... Разберитесь с этим. Как мы можем это решить? Я ухожу [02:15:35] Чтобы скопировать и вставить сюда то же самое. После этого мы можем попросить его сделать заказ. По какому столбцу расположить в порядке очередности? По цене. Заказ по определённой колонке. Поэтому мы используем фильтрацию по [02:15:48] сортировка по сортировке также выполняется по сортировке ... сортировка по порядку означает упорядочивание моих данных. набор. Итак, в порядке, если я его попрошу... Закажите по цене здесь, и мы выполним ваш заказ. [02:16:00] прямо здесь. Смотрите, это самая низкая цена. Мы видим. Так что сейчас мы, так сказать, в общем-то, Мы видим. Так что сейчас мы, так сказать, в общем-то, По умолчанию будет произведена сортировка или упорядочивание. таблица в порядке возрастания в порядке возрастания, или, можно сказать, в [02:16:15] в порядке возрастания, или, можно сказать, в возрастающий порядок верно? Если вы хотите это отсортировать в в порядке убывания, [02:16:28] Если будет заказ, то мы просто приступим к его оформлению. Определите, что нужно получить порядок убывания. Так после покупки здесь, После покупки здесь, теперь мы хотим это настроить. [02:16:40] После покупки здесь, теперь мы хотим это настроить. затем в порядке убывания. Итак, для спуска затем в порядке убывания. Итак, для спуска Для начала, просто напечатаем здесь букву D. Если мы введем здесь dc и выполним его, Прямо здесь мы найдем самый высокий [02:16:55] ценить. Если мы ничего не определим после этого и мы его выполним, у нас есть Сниженная цена. Итак, чем мы занимаемся? Были Применяя фильтр, мы выполняем сортировку. и нашей продукции. Давай, найди его. вне. Сначала отфильтруйте. Вы уже [02:17:10] иметь отфильтрованный список. А что теперь? Что мы сделаем дальше? Мы будем двигаться вперед и Что мы сделаем дальше? Мы будем двигаться вперед и Упорядочьте своё значение или упорядочьте свой результат. рассматривать их по одному, и это наименьшее чем знак. Это простая логическая ошибка. [02:17:22] оператор всех, или, как это можно назвать, а Условный оператор. Вперед, выполняйте! по одному, и дайте мне знать, если мы все еще имеют менее 10 ответов. Сортировать по [02:17:34] Здесь же, верно? Что означает «сортировать по»? Значение сортировка моего набора данных, упорядочивание выходных данных. Так что, если я просто возьму и попрошу его... отсортируйте, э-э, запросите результат вот так. правильно, это мне даст, нет никакого Порядок сортировки соответствует порядку расположения предметов на вашем столе. [02:17:49] Выходные данные, организованные каким-либо образом, являются ли они таковыми? в алфавитном порядке или же цена покупки согласована в каком-либо порядке Порядок действий не установлен, поэтому что мы здесь делаем? Мы спросим, ​​почему бы вам не сделать заказ. по цене покупки, когда мы её запросим. [02:18:02] по умолчанию сортировать по цене покупки заказы в порядке возрастания порядок покупки этого товара. Но что, если мы Не хотите этого? А если мы этого захотим? в порядке убывания, в порядке уменьшения? Так мы идём вперёд и пишем то же самое. [02:18:17] вещь. Мы просим сортировать по цене. Но перед этим мы пишем «нисходящий» округ Колумбия. Мы определяем это прямо сейчас, когда вы расстановка стола по принципу "с помощью..." столбец по цене. Убедитесь, что вы это исправили. в порядке убывания. [02:18:31] Таким образом, он отсортирует это по убыванию. заказ. И снова у меня к вам вопрос. Хорошо. Вы можете найти мне клиентов? [02:18:44] от страна Франция страна Франция из страны Франция и э-э, э-э, то из страны Франция и э-э, э-э, то имена в порядке возрастания. [02:19:02] Для этого, пожалуйста? Какой стол вам нужен? Какие столбцы вам понадобятся в первую очередь? Скажи мне Какой стол нам выбрать? Из которого В таблице мы можем получить эту информацию. Так Нам следует подойти к столику клиентов. Очень хороший. [02:19:16] Какие столбцы нам нужны в выходных данных? Вы говорите мне, что от клиентов... сделанный. Какие столбцы вам нужны прямо сейчас? Какие столбцы нам нужны? Страна. Мы это делаем стране нужна страна. Что ещё нам нужно? ВОЗ [02:19:31] Это клиенты? Верно. Хорошо, нам нужно имя клиента тоже. Это тот результат, который мы получили? Вы ищете? Очень хороший. Майя — это Это единственный результат, который нам нужен? Это единственный результат, который нам нужен? Нет, нам нужны не только представители всех стран. [02:19:44] из Франции. Итак, теперь, когда у нас есть мы выбрали здесь все, что было после этого. Необходимо применить условие "где". Почему? Потому что мы ищем страну Это должна быть Франция. Поэтому, когда мы, когда мы Ищете то, что ищете? Тогда приступим. [02:19:57] и снова дважды щелкните по стране и на этот раз мы используем другой оператор, который равно знаку, и теперь мы пойдем. Впереди и наберите Франция. Когда ты Ввожу сюда название Франции, поскольку Франция — это... текст должен быть заключен внутри [02:20:11] либо одинарные, либо двойные кавычки. Верно? Поэтому всякий раз, когда вы пишете Верно? Поэтому всякий раз, когда вы пишете текст или дата текст или дата, это должно быть заключены в двойные кавычки только тогда оно сможет [02:20:23] Понять, что мы ищем. Так когда вы зададите вопрос стране из Франция, вот здесь, в результатах поиска, вы увидите Здесь всего 12 строк. У нас есть то, что Здесь сейчас всего 12 рядов, мы хотим Отсортируйте здесь. Итак, теперь название страны. [02:20:37] похоже. Итак, как же нам это отсортировать? здесь? Таким образом, мы можем отсортировать по Здесь указано имя клиента. Итак, мы пойдем. и дважды щелкните по имени клиента прямо здесь. Даже если я не буду писать восходящее движение будет происходить в восходящем движении [02:20:51] порядок, соответствующий набору A2. Вы также можете пойти далее и определить восходящий АСК. это также выведет его в восходящий тренд. заказ. Итак, что бы мы ни рассматривали, Все в порядке, это все ваше. условные операторы, вот они. [02:21:05] все условные операторы. Итак, мы в зависимости от индивидуальных условий скорее, условия. Поэтому их называют условные операторы или логические Можно сказать, операторов. Что это? Эти операторы равны, но меньше [02:21:17] больше, больше или любые их комбинации из них. Верно? Это не равно. Также можно написать «не равно», например: этот. [02:21:32] каждый. Вот как мы их используем: определить одно-единственное условие. Верно. я определить одно-единственное условие. Верно. я Я напишу это в Совместное использование кода. Вы можете получить это оттуда. и дайте мне знать, когда мы сможем двигаться дальше. [02:21:45] потому что, э-э, дальше я бы хотел... Знаете, вот что здесь есть список стран. Чего я хочу, того я и хочу список стран, к которым принадлежат клиенты. Список список стран, к которым принадлежат клиенты. Список страны, к которым принадлежит клиент [02:22:00] Это то, что мы хотим получить. Хорошо. я Мне нужна только одна колонка. Мне нужен только один. столбец, обозначающий страну. Итак, нам нужен список. страны. [02:22:17] Пожалуйста, сообщите мне, когда мы сможем двигаться дальше. Я буду ждать ответа. Хорошо. операторы. Хорошо. Как мы можем добраться до Только рубрика "Страна"? Как мы можем получить [02:22:31] Здесь только одна колонка, посвященная странам, где мы можем все страны, все. Итак, вот это Мы хотим выбрать. Мы хотим выбрать страна, откуда, от клиентов здесь верно? Если мы хотим получить от клиентов здесь, мы Выполните это здесь. Это страна [02:22:47] список. Это правильно? Есть ли у нас что-нибудь? Здесь 122 страны? повторяющиеся элементы. Дубликаты присутствуют. Итак, как же нам избавиться от дубликатов? Мы получаем уникальный список. Так что же именно? [02:23:02] Наша цель – получить что-то уникальное. список. Как нам получить эту информацию? Здесь уникальный список? В общем, мы хотим Чтобы удалить дубликаты, верно? Мы хотим удалить все, что повторяется, это дубликаты. Итак, мы [02:23:16] Скопирую и вставлю точно такой же текст. То же самое, но теперь мы используем функции. правильные функции и ключевые слова. Ключевое слово Здесь есть отличия. Ключевое слово здесь — Здесь есть отличия. Ключевое слово здесь — отчетливый. «Отличительный» означает уникальный, верно? [02:23:31] Так что, если я продолжу писать здесь отчетливый. Это же ключевое слово, верно? Если я используйте здесь слово distinct, и мы Выполните это прямо здесь. Теперь мы видим, что У нас записано 27 строк, и всего их 27. там находятся страны. является отдельным может быть [02:23:48] там находятся страны. является отдельным может быть написанное либо в виде ключевого слова, либо иногда вы также обнаружите отчетливую прибыль или используется там как функция. Так что, когда это происходит используется как функция distinct будет затем следует вступительная скобка и [02:24:03] после того, как страна будет закрыта внутри скобок и закрыто, как иногда так бывает, оба варианта Совершенно верно, они вам помогут. Совершенно верно, они вам помогут. Ответ тот же. Хорошо. Вот как мы получаем [02:24:15] Здесь есть свои отличительные черты. Так что вперед, берите! этот уникальный список. Если я тебя спрошу Сколько стран у вас есть? Чтобы посмотреть на результат, верно? 27. Э-э, сейчас А что, если я не хочу видеть этот список? Все 27 стран, верно? Мы не хотим [02:24:32] чтобы увидеть список всех 27 стран. я Просто хочу знать. Я просто хочу Просто хочу знать. Я просто хочу знать, сколько стран, сколько знать, сколько стран, сколько количество стран количество стран [02:24:45] есть. Сколько стран есть ли там, куда мы отправляем наши товары? продукт. Я просто хочу знать, сколько количество стран означает общее количество страны означают общее количество страны. Чтобы точно получить общее количество [02:24:59] или ответьте, для скольких функций она предназначена считать. Функция подсчитывает правильное значение. Так Как нам использовать этот подсчет здесь? Мы хотим чтобы подсчитать, сколько всего число страны там есть. Итак, у нас уже есть список стран. Мы хотим просто [02:25:15] Здесь перечислены эти страны. Так сюда я собираюсь Выберите это здесь. Выделить и скопировать и Вставьте это сюда. А теперь мы зададим этот вопрос. Давайте начнём пересчитывать. Мы попросим его... Давайте посчитаем. Что считать? Счет [02:25:32] Это функция для всех. Итак, вы открываете Здесь скобки, потому что count — это функция. и внутри этого счёта, если хотите. Вводите команду "count country" напрямую. Вводите команду "count country" напрямую. Здесь вы получите ответ, так как 122 — это [02:25:47] Интересно, когда 122 — это правильный ответ. Нет Мы знаем, что правильный ответ — 27. Поэтому мы Придётся сказать, что нет, не надо. подсчет столбца полностью. Давай, вперед! Сначала вы создаете, затем получаете отчетливый [02:26:02] Сначала вы определяете страну, а затем — место жительства. Итак, смотрите Это ключевое слово. Его также можно использовать в качестве Это функция, но и количество тоже функция. Убедитесь, что сразу после подсчета это затем следует вступительная скобка. Сейчас [02:26:16] После выполнения этой операции мы получим подсчет. Это отдельная страна, 27-я страна находится прямо здесь. Так что это можно написать так, или мы можем просто напишите это вот так. также. Таким образом, у нас либо есть подсчет здесь, либо открытая вакансия. скобка здесь и закройте скобку справа [02:26:31] здесь. Если вы наберете это таким образом, то тогда Также получаем 27 в качестве ответа. Однако, Хорошо ли выглядит название этого столбца в... выход? Я дам вам достаточно времени. Ответьте мне только на один вопрос. Это Название столбца вас устраивает? Нет. Итак [02:26:48] Нам нужно переименовать этот столбец, верно? Мы Необходимо переименовать этот столбец. к Переименуйте этот столбец здесь. результат, мы его получим альтернативное название, и мы называем это название псевдоним, так что als — это всего лишь [02:27:03] альтернативное название, которое мы ему даём Как переименовать конкретный столбец? Здесь нужно переименовать столбец, чтобы... Это наш запрос SELECT, верно? Я так и сделаю. Я буду держаться в следующей строке начиная со следующей строки, и как только мы [02:27:18] Полную функцию напишу позже. скажем так, мы сейчас напечатаем как s здесь и внутри двойных кавычек В данный момент я пишу то, что у нас здесь есть. В данный момент я пишу то, что у нас здесь есть. общее количество стран, общее количество стран [02:27:32] Здесь указаны страны, поэтому я пишу здесь общее количество. количество стран прямо здесь, так что если я продолжу писать например, общее количество стран внутри одинарных или двойных кавычек здесь и я выполню это прямо здесь, это будет [02:27:47] и я выполню это прямо здесь, это будет Переименуйте его прямо здесь, оно называется так. Однако существует несколько способов ввода текста. Здесь находятся арасы. Верно? Что является другим? Здесь находятся арасы. Верно? Что является другим? Как сюда добраться? Позвольте мне скопировать и вставить это. [02:27:59] здесь. Другой вариант — я не пойду. Далее, заключив все в двойные кавычки. Поэтому я Можно сразу же ввести имя здесь. Но если я наберу это напрямую Имя здесь, я... мне нельзя его давать. больше нет мест. Мне нельзя начинать [02:28:13] с указанием числа или чего-то подобного. Итак, у меня есть продолжить и написать общее количество стран или общее количество стран здесь или число страны. Поэтому, даже если я не дам Двойные кавычки... э-э, вот мы... у меня всё хорошо. Я могу здесь назвать название колонки. [02:28:26] Его переименуют, но мы не можем дать никаких пояснений. больше нет мест. Если оно вдвойне Цитаты, которые мы можем привести, содержат пробелы. Мы можем печатать Всё началось с числа или чего-то ещё. Хорошо. Это может быть буквенно-цифровой формат. Что такое А как иначе? Другой вариант здесь — мы [02:28:39] каждый раз, когда мы печатаем, чтобы определить, что мы используют псевдоним или альтернативное имя. Даже если я не напишу это здесь, а напишу позже. укажите общее количество стран как есть. и, э-э, позвольте мне изменить [02:28:54] укажите здесь свое имя, чтобы вы могли его увидеть. выход. Итак, если я решусь на это, Это место снова переименовано. Так что даже если Я не печатаю, потому что SQL понимает, что мы переименовывают столбец. Так что, вперед, считайте! и переименуйте столбец в выходных данных. [02:29:10] Это псевдоним. Это очень просто. Ты Всегда давайте ему имя. Это ещё один способ набрать текст. Так что даже если вы не пишете о том, пишете ли вы Ставить двойные кавычки или нет, хорошо, вы сами. всё равно туда доберётся. Двойные кавычки — это [02:29:25] учитывая, когда мы хотим выделить пробелы во имя. Однако в стандарте На практике мы не ставим пробелы в имя. Даже если мы даём двойное кавычки. Хорошо. Предпочтительный способ — следующий. Предпочтительный способ — это вот этот. [02:29:39] На это есть причина, потому что... как Начинающий, хорошо, если вы посмотрите. что-то написанное прямо здесь вы Возможно, стоит попробовать найти это в виде колонки. Имя здесь. Чтобы избежать путаницы, избегайте путаницы, хорошо? мы всегда будем [02:29:54] введите текст, и мы всегда будем предоставлять двойные кавычки, подобные этим, заставляют нас... Нам так легче узнавать имена. У меня к вам вопрос. [02:30:06] упражнение для других Я жду этого просто упражнение категория Таким образом, линейка продукции находится в одном углу. [02:30:29] Эта часть останется Здесь ситуация похожая. Итак, я собираюсь скопировать и вставить. А теперь нам нужно работать над продуктами. За столом всем. Итак, мы перейдем к Здесь находится таблица товаров. Внутри этого мы хотим подсчитать количество отдельных товарных позиций. Мы [02:30:42] Дважды щелкните по этой товарной линейке. Мы Назову это так: да, вы можете написать. В любом случае, это не имеет значения, и я... пишу это здесь как пишу это здесь как весь ассортимент продукции [02:31:01] откуда так из таблицы продуктов из продукция здесь и здесь мы в настоящее время мы используются такие функции, как подсчет, хорошо? вы можете использовать сумму, среднее значение, стандартное отклонение. отклонение и гораздо больше максимальных и минимальных значений, верно? Так [02:31:15] мы можем смело использовать подобные функционирует аналогичным образом. что. Верно? Так что, речь идёт не только о функциях, мы можем просто использовать математические операторы [02:31:28] слишком. Мы можем использовать не только логическое ИЛИ. Здесь представлены операторы и функции сравнения. мы также можем использовать математические операторы или простой математический расчет. Таким образом, с помощью этих данных мы можем фактически сложите все вычисленные [02:31:43] колонна перед выходом. Итак, давайте Возьмём здесь пример. Итак, у нас уже есть У нас же есть таблица с товарами, верно? Мы знаем Как извлечь идентификатор продукта, его название и последующее описание? Цена покупки: у нас также есть столбец с рекомендованной розничной ценой (MSRP). там. Это стандартная цена, которая [02:31:57] Мы продаём его по указанной цене. Правильный. Мы можем Возьмите эти три колонки. оттуда. Однако теперь компания... решил, что что бы это ни было Стандартная цена есть, мы будем повысить стандартную цену на 10% [02:32:12] каждый продукт. Они повысят стандартную цену на 10% с каждого товара. Поэтому они хотят Добавьте сюда новый вычисленный параметр. столбец, называемый новой рекомендованной розничной ценой, находится на выходе и... новая рекомендованная розничная цена будет всего на 10% выше. [02:32:29] чем старая рекомендованная розничная цена здесь. Верно? Итак, вот это Теперь рекомендованная розничная цена станет прежней рекомендованной розничной ценой. Данная рекомендованная розничная цена Теперь рекомендованная розничная цена станет прежней рекомендованной розничной ценой. Данная рекомендованная розничная цена станет прежней рекомендованной розничной ценой. [02:32:43] новая рекомендованная розничная цена. Хорошо, мы можем записать это так. рекомендованная розничная цена рекомендованная розничная цена старая рекомендованная розничная цена плюс 10% от старой рекомендованной розничной цены эта рекомендованная розничная цена формула, извините, столбец там, можем ли мы Запишите уравнение следующим образом: MSRP плюс [02:32:58] 10% от рекомендованной розничной цены, чтобы мы получили увеличение Можно ли снизить цену на новый товар? поскольку мы знаем это с помощью типа данных то, что мы видели в начале [02:33:10] сегодняшнее заседание, которое оно не распознает этот знак процента правильно, поэтому вместо этот знак процента правильно, поэтому вместо ввод знака процента и, э-э, выключено Здесь мы можем свести это к 0,1 и Умножение мы можем сделать здесь, верно? [02:33:24] потому что мы хотим, э-э, хотим, э-э, необходимо произвести расчеты, поэтому сейчас это выглядит так. Таким образом, можно получить значение MSRP (рекомендованная розничная цена) из... столбец MSRP в отдельной строке столбец MSRP в отдельной строке умножьте это на 0,1 и добавьте к [02:33:38] более старая рекомендованная розничная цена. Всё очень просто. Но если мы всё же уменьшим это здесь, мы можем вывести общее значение на Уменьшите его до более компактной версии. Итак, однажды [02:33:50] Мы получаем информацию о рекомендованной розничной цене, и мы увеличиваем её. с помощью 1 + 0,1. Это значит, что мы можем просто Укажите новую рекомендованную розничную цену следующим образом. Рекомендованная розничная цена умножить на 1,1. [02:34:02] Правильный? Итак, мы это рассчитали. Вот здесь, в колонке. Итак, как же мы пишем? Этот вычисляемый столбец здесь? Итак, мы начинаем вперед и выберите прямо оттуда Мы проводим отбор? Я пишу с первого числа. здесь. Хорошо, я… я… сейчас это выскажу. [02:34:16] первый из таблицы товаров. Хорошо, я Сначала выложу это. Затем я печатаю. выбрать, чтобы я не забыл, какой именно таблица, над которой мы работаем. Итак, в этом случае Выберите здесь, сначала нам нужен идентификатор продукта. Вот он, код товара. И [02:34:31] Я переименую это здесь в название «продукт». ИДЕНТИФИКАТОР. Легкий. Сразу после этого мы ищем то, что нам нужно. запятая, мы хотим, чтобы там же было и название продукта, поэтому Это имя, давайте возьмем это здесь как Название указано только так, поскольку это идентификатор продукта. [02:34:46] название продукта также должно следовать за названием продукта. Назовите желаемую рекомендованную розничную цену (MSRP), и это будет MSRP. Но это старая рекомендованная розничная цена, поэтому давайте дадим ей название. здесь указана старая рекомендованная розничная цена. [02:35:04] Столбца не существует. Это расчет. Итак, мы записываем расчет. здесь. Как записать этот расчет? Мы получаем здесь рекомендованную розничную цену и запрашиваем ее... умножьте это на 1,1. Вот что мы Видел там. Теперь всё это [02:35:18] расчет, который мы включаем в себя Здесь скобки, и мы так это называем Здесь скобки, и мы так это называем Название в качестве новой рекомендованной розничной цены. Укажите новую рекомендованную розничную цену. Верно? Я обязательно сообщу об этом. Я начну с этого. [02:35:33] Я начну с этого. Здесь мы получили идентификатор товара, название и т. д. старый и верно. Я также займусь его благоустройством. здесь. Я сейчас же это украшу. [02:35:46] здесь. Я сейчас же это украшу. верно. Вы можете выбрать любое имя, какое захотите. Ты Необязательно ограничиваться только этими именами. [02:36:00] Вы можете указать любое другое имя, которое вам нравится. хотеть. Обратите внимание, что я не использую double. кавычки. Здесь я пишу одинарные кавычки. Хорошо. Помните об этом всегда, посмотрите, как Сколько строк мы получаем в результате? Обратите внимание, какие ссоры у вас возникают. [02:36:13] 110 рядов, верно? Таким образом, мы извлекаем каждое число здесь. Каждый и Здесь каждый ряд, и это построчно. расчет. Мы производим расчеты для каждое значение в каждом ряд. Поэтому это и рассчитанный результат. [02:36:27] столбец. А вы видите какую-нибудь разницу? между старыми, э-э, различиями в между старыми, э-э, различиями в Формат старой и новой рекомендованной розничной цены? Формат старой и новой рекомендованной розничной цены? Да, здесь нам тоже нужны два знака после запятой. [02:36:40] Как получить число с двумя десятичными знаками? Мы Здесь следует отсечь остальные десятичные знаки. Мы завершаем. Таким образом, функция здесь заключается в следующем: круглый. Здесь функция круглая. [02:36:54] И тогда мы скажем: "Давайте продолжим". Мы Поставьте там запятую и поставьте две. Сейчас Как только мы выполним это действие, мы получим две точки после запятой. Верно? Да, наши функции именно такие. аналогично Excel. Вы этого не найдете. [02:37:11] очень далеко оттуда. Вам нужно получить Средняя цена только на винтажные автомобили. Вы найдете старинные автомобили в столбец "Продуктовая линейка" в таблице товаров. [02:37:23] столбец "Продуктовая линейка" в таблице товаров. Столбец «Продуктовая линейка» в таблице товаров. Цена означает среднюю рекомендованную розничную цену. Получите средняя рекомендованная розничная цена. Хорошо. Но только для [02:37:39] винтажные автомобили. Винтажные автомобили — вот как это называется. продукт, который находится под столбец продуктовой линейки. Итак, если я вам покажу Здесь представлена ​​таблица товаров. [02:38:00] винтажный автомобиль. Видеть Хорошо, регистр не имеет значения. Ты В любом случае, я могу это написать. Только орфография Должно быть похоже. [02:38:14] Это главный вопрос, все правы. Так Первое, что всегда можно понять из Первое, что мы всегда выясняем, это от верно. Итак, что нам следует написать впереди? отсюда продукт, о котором нам известно [02:38:29] что. Что будет дальше отсюда, и что будет вторым? Что вы будете искать? Чего мы хотим? в выходных данных? Чего мы хотим в выход? Мы хотим средний результат. выход? Мы хотим средний результат. В среднем чего? Среднее значение рекомендованной розничной цены. [02:38:44] В среднем чего? Среднее значение рекомендованной розничной цены. Это тоже нормально. В остальном, делайте У нас есть еще какие-либо требования? У нас есть Средняя рекомендованная розничная цена из таблицы товаров. В чём заключается третье требование в данном случае? Делать У нас есть еще какие-либо требования? Верно? Мы [02:38:57] Хочу отфильтровать только винтажные автомобили. Как задать фильтр? Пункт "Где". Как задать фильтр? Пункт "Где". Но на каком именно пункте здесь В какой столбец мы хотим применить фильтр? Как называется эта колонка? Где мы [02:39:10] Хотите применить фильтр? Мы должны дать Название столбца, верно? Потому что именно эта линейка продукции Включает в себя винтажные автомобили. [02:39:28] Так вам будет легче писать. Итак, если мы наберем и выберем Итак, если мы наберем и выберем сейчас. Итак, мы перемещаемся сюда. Выберите правый В поле "Выберите здесь" мы хотим рассчитать средний. Давайте рассчитаем среднее значение. [02:39:41] В среднем чего? Где указана рекомендованная розничная цена? Из продукции Вот здесь, за столом. Это таблица товаров. Мы хотим подать заявку [02:39:53] Это таблица товаров. Мы хотим подать заявку фильтр. Мы будем применять там, где там, в производственной линии. Линейка продукции Чему это равно? Винтажные автомобили. Итак, мы Здесь машины. Сначала проверьте орфографию в в режиме реального времени, а затем введите название винтажных автомобилей. [02:40:09] в режиме реального времени, а затем введите название винтажных автомобилей. здесь. Да, именно так. Однако это лишь средняя рекомендованная розничная цена. Этот Здесь указана лишь средняя рекомендованная розничная цена. Ты Можно ли правильно ввести имя? И [02:40:22] Обратите внимание, здесь слишком много десятичных знаков. Итак, подведем итог. Поэтому мы округлим это отличается от среднего значения. Округлим до двух знаков после запятой. там, а здесь укажите подходящее имя. Так Это средняя рекомендованная розничная цена. [02:40:42] Собственное имя также здесь, и у нас есть округлено. После того, как мы округлим, дадим... имя собственное. Посмотрите, как это выглядит. лучше. Но эти данные нам ничего не говорят. Это для винтажных автомобилей. Итак, что мы можем сделать? Здесь можно поставить запятую. И [02:40:58] мы можем попросить его получить название также и ассортимент продукции. И когда мы приступаем к выполнению Здесь мы видим, что здесь указано одно-единственное имя. написано потому, что там есть фильтр. Да. Потому что нам нужен всего один выход. здесь. Это один-единственный числовой результат. [02:41:13] У нас здесь всего одно число. В процессе очистки данных я... переопределила функцию среднего значения. Да, [смех] Такое случается. Хорошо. Если вы выбираете Выберите это из выпадающего списка, хорошо? [02:41:27] вы получите, вы замените будущие или уже написанные значения там. Так что вы делаете следующее: Вы все округляете рекомендованную розничную цену, верно? Так У вас возникнут ошибки, и очень другой результат. У вас будет несколько [02:41:42] торговые карты и каждый ряд Мы выйдем, потому что прямо сейчас мы вас просят рассчитать среднее значение. Что Что такое среднее значение? Среднее значение — это совокупность. там производится расчет. Итак, если среднее значение Его там не будет, оно просто исчезнет. [02:41:54] и извлечь каждую строку. Теперь он ничего не агрегирует. Наблюдать все условия, которые мы наблюдали вчера мы просто двигались вперед и фильтрация по одному условию. Мы [02:42:07] состояние. А что, если это таблица заказов? верно? В таблице заказов здесь, если я попросим вас сделать это и получить только то, что вам нужно. Заказы принимаются, но они приостановлены. Который приостановлены. Что вы тогда будете делать? Так [02:42:24] Теперь у нас будет два условия. Мы говорим, что я хочу получить заказы. которые были размещены после первых 20 год, и они должны были иметь и статус должны быть отправлены. Давайте начнём смену Здесь указан статус, и статус должен быть следующим: [02:42:39] отправленный. Итак, теперь у нас есть то, что мы имеем здесь. Здесь есть два условия. Итак, как же это сделать? Мы просим SQL выполнить следующие действия и предоставить нам... два условия или фильтрация данных по двум параметрам условия. Здесь и кроется логика. операторы вступают в игру, то есть и или и [02:42:55] операторы войдут, то есть и/или и между ними. Что и что мы будем здесь делать? дополнительные условия. А вы что-нибудь слышали о том, как всё закончилось? [02:43:07] Или что-то среднее? Уверен, мы это слышали. об этом или между ними, не в SQL но где-то в другом месте. Если вы из инженерное дело или просто... вы чему-то научились Мы слышали о Excel всякий раз, когда о них говорили. условия и/или между и в [02:43:23] В общих случаях мы также используем это в В общем, я хочу яблоки и манго. с рынка. Возьмите яблоко или манго из рынок. Разница ведь есть, правда? Поэтому в целом мы также используем эту логическую схему. Gates and Excel и во многих других местах в [02:43:37] В повседневной жизни мы тоже его используем, и здесь. первый. Итак, что же означает «и»? Мне нужны и то, и другое. Мне нужны яблоки. А ещё мне нужны манго. Так что в одном Здесь только одна строка, это нужно проверить. это для каждой отдельной строки данных в конце всего [02:43:52] условия должны совпадать то есть дата заказа должна быть меньше. то есть дата заказа должна быть меньше. чем в 2005 году, и этот статус должен быть отправлено в соответствии с обоими условиями должно быть совпадение в каждой строке. Итак, давайте [02:44:05] Давайте посмотрим, что мы собираемся сделать. Введите это здесь. Так что мы получим то же самое. вещь здесь, заказы были размещено. Давайте сразу перейдём к делу. [02:44:23] заказы были размещены после первого Март, и статус — корабль. Как нам это сделать? Написать это? Таким образом, мы знаем, что это отборный вариант. Давайте начнём разбираться с самого начала. Итак, из У нас есть заказы, всё, что нам нужно. в таблице заказов. Итак, давайте приступим к... [02:44:39] номер заказа запятая у нас есть дата заказа Именно это мы и ищем, и Статус "отправлено", мы здесь, и мы здесь. Всё в порядке, теперь мы можем начать печатать. где Теперь внутри, где первое условие состоит в том, что [02:44:54] Теперь внутри, где первое условие состоит в том, что дата нашего заказа 1 марта 2005 года. Теперь мы умеем печатать. Это не требует объяснений, здесь есть Это не требует объяснений, здесь есть ещё один вариант, ещё один здесь. И так [02:45:09] мы печатаем здесь и задаем этот вопрос сейчас. Ваш статус должен соответствовать статусу "смена". Этот сдвиг, о котором мы пишем, это... Регистр не имеет значения. Ты можешь Введите текст так, как вам удобно. Орфография Должно быть правильно. Теперь, если я продолжу... [02:45:24] Выполните это прямо сейчас, смотрите, вот что у нас получится! Оба условия совпадают. Оба Оба условия совпадают. Оба Условия совпадают. [02:45:40] Он здесь и помогает нам двигаться вперед. получить разрешение, проверить два условия в один-единственный заказ. Итак, если я продолжу... Проверьте это, вот как это выглядит. Ты получение размещенных заказов после первого марта, и статус таков: [02:45:56] после первого марта, и статус таков: отправленный. Но теперь мне нужны заказы, которые размещено после первого марта и проверить наличие проверки статуса проверить наличие проверки статуса должно быть равно кораблю [02:46:11] и решено. Так что, независимо от того, является ли штат... так Статус должен быть "отправлено" и "решено". Итак, как видите, здесь есть Э-э, статус вроде "решено" здесь. Хорошо. [02:46:30] Таким образом, нам нужны строки обоих типов. Здесь есть и сдвиг, и разрешение. Как нам это получить? Почему мы используем оператор «или»? Давайте разберемся. Разум заключен в одном [02:46:43] В одной строке не может быть и того, и другого одновременно. Итак, у нас есть напишите здесь, чтобы это Проходит по каждой строке и проверяет, есть ли там что-нибудь. Отправлено или решено. Поэтому я скопирую и [02:46:55] Вставьте сюда именно этот текст. И что же мы печатаем, мы печатаем. мы печатаем, мы печатаем. Таким образом, здесь статус равен Таким образом, здесь статус равен Статус равен результату. [02:47:12] дата этого заказа больше 1 марта 2005 год? Оно держится Со статусом "отправлено" или "решено"? Все ли заказы оформлены после 1 марта? [02:47:25] Все ли заказы оформлены после 1 марта? 2005 год? Все ли заказы будут оформлены на более поздние даты. 1 марта 2005 года, всем привет! Да или нет? [02:47:45] 2003 год находится в первом ряду? Вам не нужно всё, что вышло после 2005 года, март 2005 года. всё, что вышло после 2005 года, март 2005 года. конкретно. У вас январь 2005 года. Ноябрь 2004 г. Октябрь 2003 г. [02:48:00] Дата заказа не соответствует действительности. больше. Да. Поэтому, когда мы пишем Или здесь есть какое-то условие, верно? И В данном случае дата заказа указана. быть выброшенным из окна. Почему? Потому что сейчас это в центре внимания. [02:48:15] или что происходит или есть получить привилегию. Итак, сначала это разрешая ИЛИ, и тогда это разрешение и поскольку и не может быть Проблема больше не решена. Оно не держится. Переходим к этому фильтру, потому что то, чем мы являемся [02:48:31] Здесь написано всё, что есть. преемственность. Мы говорим: проверьте заказать дату и отправить. После этой проверки для или. Итак, что же здесь произошло? взял всех этих двоих, как будто они здесь, и тогда выполняется проверка, или статус равен [02:48:47] тогда выполняется проверка, или статус равен результат. Так что это проблема. Так что же мы... Необходимо, чтобы дата заказа была следующей: Неважно, будет ли это отправлено или нет. Решено правильно, это должно произойти после марта. 2005 год. Поэтому нам просто нужно двигаться дальше и... [02:49:02] Включите это в скобки. Как только мы это сделаем, теперь мы это поймем. Как только мы это сделаем, теперь мы это поймем. Окей, вы хотите, чтобы это было правдой? всегда, и мне нужно проверить, так ли это. или вот это. Вот что нам нужно. Этот [02:49:18] Так мы пишем. Итак, как только вы его сохраните внутри скобок вот что будет написано Проведите сравнение между ними. Это будет применяться только между ними два. это не будет применяться или с указанием даты заказа. Так что, когда вы захотите [02:49:31] Что-то, что нужно считать истинным, сохраните это. отдельный. Когда вы хотите, чтобы что-то было Если это справедливо по отдельности, просто продолжайте в том же духе. внутри скобок. Теперь оба Условия идеально совпадают. Хорошо? Просто продолжайте в том же духе. [02:49:43] скобки вокруг него, и это будет решено. Здесь написано, пожалуйста, посмотрите Здесь экран. Хорошо, найдите продукт, у которого [02:49:58] Здесь экран. Хорошо, найдите продукт, у которого Рекомендованная розничная цена превышает 100, но меньше 180. Сколько здесь условий? Два условия. Итак, если у меня есть и оба Условия должны совпадать. Так должно быть больше, чем также, и ниже 180 также. [02:50:12] Здесь должны совпадать оба условия. Поэтому мы можем использовать здесь и . Итак, начнём с... Дальше будем разбираться. Итак, из продукт. Итак, это информация о товарах. [02:50:24] И сейчас мы рассматриваем продукт. Здесь мне не нужны все столбцы. Итак, мы Здесь можно выбрать несколько столбцов. Давайте получим название продукта. Код товара, а вот и рекомендованная розничная цена. Верно? Это именно то, что нам нужно. [02:50:40] Теперь давайте введём, где именно в где Это рекомендованная розничная цена. Рекомендованная розничная цена выше. чем 100. Так что мы можем смело печатать. чем 100. Так что мы можем смело печатать. больше 100. И опять же, рекомендованная розничная цена, потому что [02:50:54] Существуют два условия. Таким образом, рекомендованная розничная цена ниже. чем деньги. менее 180. Это произойдет. чем деньги. менее 180. Это произойдет. Чтобы показать нам здесь рекомендованную розничную цену, цена составляет от 100 долларов. и 180. Так что же нам нужно? числовой диапазон. Поэтому всякий раз, когда у нас возникает [02:51:09] между. Мы можем подать заявку отсюда. Вместо А здесь мы могли бы что-нибудь написать. Как осуществляется ввод текста между строк? Вот столько-то останется неизменным. Этого будет достаточно остаются похожими. После рекомендованной розничной цены мы просто [02:51:25] Введите здесь, и мы напишем MSRP. должно быть в диапазоне от 100 до 180. Таким образом, Между ними нельзя использовать без и Типы 100 и 180. Да. Теперь в обоих случаях [02:51:37] В данном случае ответ будет следующим: похожий. Ответьте мне сейчас. Мы ли это? включая 180, когда мы используем фильтрацию с помощью А какая здесь функция? Включаем ли мы 180 градусов, когда мы печатаем, и здесь? Верно Теперь мы не включаем верхнюю и нижнюю части. [02:51:51] Здесь установлен лимит. Если я захочу это сделать, мы сможем. Напишите здесь «равно». Если я Хочу это включить, мне нужно это напечатать. равно здесь. Тогда я включу верхнюю часть. и нижний предел. Это значит, что у меня есть выбор. Это значит, что у меня есть выбор. [02:52:05] Это работает как Excel, а не как программа. язык. Как вы уже видели раньше, Это работает как Excel. Оно должно вернуться обратно. для каждого столбца каждый раз для фильтрации что-то вытащить. Поэтому нам нужно ввести MSRP. равно рекомендованной розничной цене равно, когда мы говорим [02:52:20] между всеми между верхними и нижний предел устанавливаются автоматически включено. Верхний и нижний предел в Диапазоны включаются автоматически. Поэтому, когда вы используете between и here, это [02:52:33] будет включать как верхний, так и нижний предел. Итак, это ваш промежуток, и он будет будут включены автоматически. У нас нет Здесь ровно 100 или 180. Поэтому мы не можем Видите разницу? Да, это работает так: [02:52:46] Видите разницу? Да, это работает так: что. Итак, это и между ними Это разница между и и решите это [02:53:08] Нажмите здесь и посмотрите на написание. Здесь первым. Допустим, ваша логика верна. Абсолютно верно. [02:53:21] Клиент из США или Франции. Теперь мы знаем. Мы говорим здесь о клиентах. верно. Поэтому, конечно, мы этого не хотим. мы выбираем все товары от клиентов, но мы мы с нетерпением ждём ответа от клиентов прямо здесь. [02:53:40] Давайте выберем несколько столбцов. Так клиенты, э-э, это имя клиента. И давайте добьёмся успеха в стране, вот что мы сделаем. ищут клиентов и взаимодействуют с ними. Так Нас это устраивает, но мы не хотим Конечно, мы не во всех странах. [02:53:53] немного. Итак, мы воспользуемся всеми функция здесь, потому что в каждой строке мы будем Проверяйте информацию по отдельным странам, а не по всем. Так А теперь нам нужно сказать... А теперь нам нужно сказать... то есть, где страна равна [02:54:07] то есть, где страна равна Допустим, здесь США, или страна равна И снова нам нужно это напечатать. снова. Почему? Потому что этот SQL-запрос здесь будет рассматривать эту страну как три отдельные столбцы. Лечение этого не предусмотрено. [02:54:20] в виде одной единственной колонки с несколькими фильтры. Поэтому каждый раз это будет происходить. и проверьте это, проверьте это по ходу дела. Вперед, проверяю наличие следующей колонки. прямо там. Поэтому, когда вы это пишете Здесь регистр не имеет значения, но вы [02:54:33] Абсолютно верно. Поэтому нам нужно идти. вперед и наберите или или и, конечно же, вы Здесь вы найдете правильный ответ, а именно: Собираюсь увидеть США, Францию ​​и Австралия, верно? Это 53 строки. Хорошо, Здесь 53 строки. Так что, если ваш [02:54:47] Орфография правильная, вы получите 53. ответ. В большинстве случаев вы будете допустил ошибку в написании слова "э-э" Австралия. Но представьте себе, что если бы вы Необходимо проверить 10 условий. Что, если если вам нужно проверить 10 условий [02:55:02] тогда в одном столбце это будет Напечатать будет слишком сложно. мы будем допускать ошибки при наборе текста орфографические ошибки прямо здесь, потому что у вас есть проверять, писать, копировать и вставлять. Итак, в это время, поехали! [02:55:16] Впереди мы выбираем оператора здесь и Давайте выберем здесь оператора. Что здесь подразумевается под оператором? В операторе это поможет нам предоставить полный список по адресу одно место. Таким образом, оператор действует как или верно. Итак, если я наберу текст [02:55:31] оператор здесь, внутри этого мы можем пойти и запишите весь список и что именно. Это приводит к отображению столбца «Страна». и проверит список, если что-то есть. автоматически работает как странный механизм, но это так. Удобно писать. Как напечатать n? [02:55:46] Здесь оператор? Итак, мы сначала приступим А здесь вы найдете эту колонку. Перед В столбце мы пишем N, а внутри здесь мы Введу здесь значение один Введу здесь значение один значение запятой два [02:55:59] и значение три. Так что, если это текст, мы Напишу внутри кавычек. Если это так Это не текст, мы просто оставим его как есть. является. Вот как работает оператор in. является. Вот как работает оператор in. оператор помогает нам, э-э, помогает нам, помогает нам [02:56:13] чтобы правильно ввести здесь фильтр. Так Здесь ситуация останется точно такой же. а после названия страны мы просто введем а внутри Индии мы можем предоставить весь список. Так вот, это наши США. Скопирую и вставлю сюда, расставив запятые. [02:56:28] Франция здесь? и теперь недалеко от Австралии. Поэтому у нас нет или, опять же, нам не нужно печатать страна равна снова мы это напечатаем Только один раз, и нам не нужно ничего печатать. любое n автоматически принимает участие [02:56:41] И еще у нас остались 53 корня. прямо здесь. прямо здесь. Таким образом, эта переменная n фактически работает как множественный или подобный n оператор, подобный оператор, у нас также есть любой оператор или [02:56:56] оператор любой все в существует у нас есть что На данный момент мы сосредоточимся на n. Итак, давайте посмотрим. за столом для сотрудников прямо здесь. В Что у нас есть на столе у ​​сотрудников? Мы У меня есть номер сотрудника, адрес электронной почты и название офиса. [02:57:11] код и должность. В названии должности Здесь находится колонка, есть ли у нас менеджеры? Только Менеджер ввода текста работать не будет. Почему? Потому что нет ничего, что было бы в точности таким, каким оно есть. Здесь это равнозначно менеджеру. Итак, мы В данный момент я не пытаюсь выяснить... [02:57:27] точная фраза внутри точки данных. Правильный? Что мы пытаемся выяснить Правильный? Что мы пытаемся выяснить является частью части строки. Мы пытаемся отфильтровать строки. из той части строки. Итак, мы хотим [02:57:40] где бы ни был указан менеджер вся фраза во всей этой строке где бы ни был написан текст о менеджере, основанный на что вы отфильтруете эту строку. Правильный? В данном случае здесь нет равно Операторы сравнения будут работать. Это [02:57:56] где сравнение этого происходит там Вступает в игру непредсказуемый фактор. Вот тут-то мы и пригодимся. Вступает в игру непредсказуемый фактор. Вот тут-то мы и пригодимся. имеют козыри в рукаве. [02:58:08] Дикие карты активируются при одинаковых условиях. оператор. Поэтому всякий раз, когда мы хотим использовать Здесь есть джокеры, и мы хотим получить вот это. вытащить небольшой участок веревки, мы сначала активировать оператор «Нравится». Итак, в Как и у оператора, здесь есть две вещи. [02:58:21] Мы можем с этим работать. Один из них — процент. знак. — это знак подчеркивания. Что это такое? Здесь знак процента обозначает [02:58:35] переменная здесь, которая у вас будет переменная... что здесь следует сказать? у вас должна быть переменная переменная бухгалтерские книги, буквы и символы, правильно и [02:58:47] Этот балл здесь просто означает фиксированный. число фиксированное количество мест фиксированное количество букв или блоки — что это вообще значит? Давайте [02:59:00] Поймите это, поэтому, если я продолжу, я Здесь введу процент. После например, в процентах, я продолжу. и менеджер типов. Менеджер типов. Что Что это значит? Здесь это означает, что если я если я печатаю проценты [02:59:16] если я печатаю проценты процент до менеджера. Итак, мы... передача SQL-запроса, который видит эту фразу. следует ли использовать всю фразу или всю целиком Строка должна заканчиваться на стороне менеджера и перед менеджер перед менеджером любое количество [02:59:33] там может появиться любое количество переменных. Там можно записать переменную. Так что это возможно это может быть буква, символ, пробел или что угодно. может быть здесь, но должно быть раньше. менеджер. Если мы всё-таки это напечатаем Хорошо, это менеджер, и если я напишу [02:59:47] процент после этого, поэтому мы сообщать SQL, что это конкретный показатель данных должен начинаться с М и ДжР и заканчивать чем угодно, заканчивать на что-либо Могут быть свободные места и любое их количество. [03:00:01] Переменные — там будет всё что угодно. Если мы Сначала введите проценты, а затем затем менеджер, а затем снова процент. мы просто говорим, что посередине где-то посередине э-э... вся фраза эти конкретные слова [03:00:17] Должно быть там. Неважно, что Всё начинается с того, чем заканчивается. Хорошо, Это в процентах. Это в процентах. Так что, если вы хотите пойти Это в процентах. Так что, если вы хотите пойти и вытащить отсюда менеджера, что [03:00:32] нам следует использовать тогда следует ли нам процент написания и менеджер или нам следует написать менеджеру и процент или следует писать процент [03:00:45] процент менеджеров Сейчас у нас соотношение 2 к 1. Это Правильный ответ. Почему это правильно? отвечать? Посмотрите, этот менеджер... где-то посередине. В конце также У нас есть несколько переменных. Да, Самр. [03:00:59] Это наш оператор. Давайте начнём. А вот и столик для сотрудников. [03:01:18] Стол для сотрудников, давайте приступим. получить номер сотрудника. и их должность получить номер сотрудника. и их должность Мы пришли сюда от сотрудников, и теперь мы хотим Давайте добавим здесь фильтр. Так Внутри сети мы скажем, что видим, я хочу [03:01:32] установить фильтр по названию должности название должности должно быть похоже на процент. менеджер процент правописание менеджер должен соответствовать своему менеджеру [03:01:44] процентное соотношение должно быть включено. внутри одинарных кавычек это выглядит так: внутри одинарных кавычек это выглядит так: То, что у нас есть менеджер, находится прямо здесь. [03:01:58] предполагается, что эти вещи нужно печатать здесь вот так: Вам не следует вводить ключевые слова. или название столбцов или название Здесь представлены таблицы. Я хотел бы напомнить Вам достаточно просто дважды щелкнуть мышкой. Хорошо, пожалуйста, дважды щелкните. Не делайте [03:02:11] орфографические ошибки. Пожалуйста, дважды щелкните. Да, я абсолютно согласен. верно. Три ряда. Их три. записи. Я бы хотел сейчас посмотреть, какой из них... Сотрудник является менеджером по продажам. Что я буду делать? Сделаю, если позволите. Я вижу только этих троих. [03:02:25] здесь. Я хочу знать, кто это. люди. Это нормально. Иначе как же это работает? Логично было бы увидеть всего три названия. здесь? Мне нужны подробные сведения об этих людях. Я хочу все менеджеры. Может быть, я хочу все это менеджеры могут пригласить их на совещание [03:02:38] менеджеров. Мы должны получать имя и фамилия, а также их Этот список, э-э, есть у кого-то, верно? Они позвоню этим людям и скажу им... сообщить куда-нибудь. Хорошо, вот что... Достаточно будет процента. Процент [03:02:53] везде, где указан процент, он будет ищите несколько символов. Что это Что будут искать? Он будет искать несколько символы или переменные символы. там. Итак, что означает «менеджер в процентах»? спереди может быть любое количество [03:03:08] персонажей. Если мы продолжим печатать процентное значение менеджера, которое следует учитывать начинать с M и заканчивать любым числом персонажей. Нам всё равно. И когда Сначала мы пишем проценты, а затем Здесь под процентами подразумеваются начало и конец. [03:03:23] может содержать любое количество множественных переменных символы — вот что такое процент. Далее следует знак подчеркивания. Далее следует нижнее подчеркивание. Вот там стоит табличка, там фиксированное количество. буквы или, можно сказать, фиксированное количество [03:03:37] персонажей. Что подразумевается под фиксированным? Количество символов здесь? Это означает, что если я позволю себе набрать подчеркивание один раз. Если я наберу символ подчеркивания однажды здесь. По сути, мы задаём вопрос чтобы добраться до одной буквы. Так что, если я пойду [03:03:52] и напишите, что должно быть две буквы в конце, тогда должно быть буква О. Тогда будет там должно Здесь должна быть еще одна буква. Итак, мы Здесь должна быть еще одна буква. Итак, мы Ищу письмо, возможно, оно от кого-то. [03:04:08] Это нижнее подчеркивание. Это подчеркивание. Здесь одна буква. Это О что-то, что должно быть образцом, мы являемся Ищу закономерность. Так что все в [03:04:20] Ищу закономерность. Так что все в весь столбец все точки данных следуя этой схеме, мы имеем третий символ, обозначенный как O, будет извлечен. отфильтровано или удалено. Вот что из этого следует Подчеркивание означает. Это значит один значит один [03:04:34] характер. Один означает один символ. Один означает один такой символ. Да, ты В большинстве случаев это то, что мы использовать. Это то, чем мы пользуемся. верно? Давайте рассмотрим пример. Давайте рассмотрим пример. Для некоторых [03:04:49] причина, скажем, по какой-то причине, Допустим, мы хотим найти клиент, чье имя начинается с буква М, имя которой начинается буква М, имя которой начинается с буквой М и должно быть ровно [03:05:02] три символа и должно быть ровно три персонажа. Итак, нам нужен клиент. чье имя начинается с буквы М и начинается не только с буквы М, Должно быть ровно три символа. Так как мы будем это писать дальше [03:05:15] здесь. Чтобы написать это здесь, нам нужно уйти. и напишите, что начинается с буквы М, и это Должно быть ровно три символа. здесь. Поэтому я напечатаю второй текст. Здесь используются символы подчеркивания. Я продолжу. и введите здесь два символа подчеркивания один [03:05:28] Как это будет выглядеть, когда вы это набираете? Похоже, как одна линия, но их две Здесь расположены символы подчеркивания. Итак, это М и имеют ровно три символа в общий. Итак, давайте посмотрим, есть ли у нас что-нибудь. имена, подобные этому. Итак, здесь я выбираю это. [03:05:44] наш от клиентов. [03:05:57] Имя здесь. Хорошо. И давайте Посмотрите, есть ли там какие-нибудь имена. Вот так вот здесь. Опять же, сначала свяжитесь со мной. Имя состоит из буквы М и двух знаков подчеркивания. [03:06:11] Здесь У нас всего один человек. Если я продолжу, я поставьте здесь еще один знак подчеркивания Всего будет четыре персонажа. Вы будете У нас четверо человек. Так что, если вы работаете Для четырех персонажей вы увидите больше [03:06:23] Ответы здесь. Вот как это работает. Вот как это происходит. работает. В целом, вы их не найдете много. варианты использования, отличные от шаблона признание. Если вы ищете тогда будет строгое распознавание образов [03:06:35] быть полезным. В противном случае, большую часть времени менеджер получит этот процент Всё будет улажено. Почему? Потому что если нам просто нужна первая буква начала С буквой М мы могли бы написать это как М. и в процентах, и этого будет достаточно. [03:06:49] Таким образом, после буквы М может быть любое количество слов. может быть любое количество символов. может быть любое количество символов. там. Так что, если я продолжу писать здесь М с процентами М с процентами здесь. Теперь буквы, следующие за ними... [03:07:04] здесь. Теперь буквы, следующие за ними... Это не имеет значения. Видеть, Вот в чем разница между ударом по мячу. знаки подчеркивания и процент. А теперь вперед, берите. Это ещё один Способ применения фильтра с помощью символов-заменителей. [03:07:16] Каждый Мы уже однажды это здесь делали. Мы Требуется из стола заказов. Мы Начали с этого. Поэтому мы хотели получить номер заказа, дата заказа и статус где дата заказа — 2004 год. А затем мы [03:07:32] Они получают и функционируют здесь. Итак, сейчас нам нужна дата заказа. с января 2004 года. Поэтому я это меняю. до января 2004 года. Так что здесь все в порядке. Но [03:07:45] до января 2004 года. Так что здесь все в порядке. Но впоследствии здесь задается вопрос о том, что р. Итак, мы напечатаем здесь, но после n они либо находятся в процессе отгрузки, либо на удерживании. Итак, теперь приступим и используем это. [03:07:58] оператор, потому что нам нужно использовать здесь или вместо того, чтобы писать или несколько раз Здесь после добавления мы скажем, что идите и проверить статус, и здесь мы пишем мы Давайте наберем процесс m sh или код [03:08:14] и мы это здесь печатаем, чтобы убедиться, что мы в одинарных кавычках прямо здесь. Теперь нам не нужно ничего печатать. Мы можно просто напечатать весь наш список. [03:08:27] Помните, что лишних пробелов нет. Да, мы тоже можем так писать. Мишель. Давайте проверим. Есть ли у нас какие-нибудь? Ответы здесь? Да, конечно. [03:08:41] У нас тут смена. Завершение процесса или конечный процесс, а не Все проверяется. Так вот он. Это пост. консультант. Теперь давайте поищем второй. Второй шаг — это привлечение клиентов. [03:08:55] второй. Второй шаг — это привлечение клиентов. чье имя начинается на букву А или В, и они чье имя начинается на букву А или В, и они Они из Германии. вне. Я понятия не имею, есть ли у нас какие-либо. Правила могут быть такими или нет. У нас их двое. [03:09:09] Такие люди. Замечательный. Вот вопрос. Эм, хорошо. забрать Вот вопрос. Эм, хорошо. забрать клиенты, чьи имена начинаются с буквы А. или вариант Б, и они из Германии. Ну и что Видите, вы все применяете фильтр? [03:09:24] Видите, вы все применяете фильтр? на разных столбцах, верно? Кто-то... э-э... Немногие из вас применяют этот конкретный метод. фильтр по имени клиента, которых у вас немного. выбранное имя контактного лица клиента В обоих случаях вы получите ответы. [03:09:38] Вы можете получить один ряд или два ряда. Например, если я возьму вот это... вот это первый, который я получу, если возьму это. Решение прямо здесь. [03:09:51] Итак, это имя клиента и страна. от клиентов. После страны и Германия, мы печатаем, и теперь нам нужно... могут передавать друг другу, как начиная с А или начиная с В. Итак В данный момент мы используем здесь имя клиента. [03:10:07] имя прямого клиента первый И вот, теперь здесь два человека. Если Вместо имени клиента я напишу следующее. и использовать имя клиента, которое [03:10:20] Сначала напишите имя, затем ответ будет. различаются. Поэтому для этого я возьму следующее: Второе решение, которое я нашел, смотрите здесь. у нас есть контактное имя было у нас есть контактное имя было Здесь взято то же самое. Таким образом, логика та же. [03:10:35] Таким образом, оба ответа верны. Хорошо, давайте рассмотрим это подробнее. множество различных типов функций здесь. Основные типы функций, которые мы Здесь находится текстовая функция, дата. функции, условные операторы, такие как [03:10:49] функции, условные операторы, такие как Э-э, FLS, и дело, и когда. И здесь Первое, чему мы научимся, это Речь идёт о строковых функциях. Они также называются текстовыми функциями или простыми персонажей. Верно? Какие типы строк [03:11:04] Если вы знакомы с Excel, вы уже видели строки. функции. Если вы знакомы с Tableau или Существуют некоторые похожие языки, вы Я видел там текстовые функции. Для Например, существует текстовая функция, которая называется как верхняя часть. Что оно делает? Это продолжается [03:11:19] и преобразует письмо меньшего регистра в заглавная буква. Аналогично, у нас есть... э-э, мы называем... ниже. Что оно делает? Это приводит к [03:11:31] прописная буква, преобразует это в строчная буква. Это верхняя часть и ниже. Вот ещё один пример: функция длины. Что даст длина? Длина просто продолжит и предоставит длина строки. Что бы это ни было [03:11:44] написано внутри, и это даст нам длина строки. У нас есть ещё один. функция называется trim. Какая комплектация будет? делать? Обрезка позволит избавиться от лишних зазоров. Это оставит одно свободное место. Это избавит любых лишних пробелов, если они написаны. [03:11:57] до или после строки или персонажей. Итак, если у меня есть адрес слишком много пробелов между адрес первой и второй строки, затем она Избавлюсь от этого. Так же и в аналогичном случае. [03:12:11] строка сервиса. Мы получили обратное. Функция Reverse изменит направление точки данных uh на противоположное. Подслужебная строка получит просто несколько слова из всей строки, которая Там находится строка сервиса. Хорошо. Это несколько очень распространенных состояний э-э-э текст [03:12:25] функции находятся прямо там. А вы как думаете? Можете ли вы назвать какую-либо другую функцию? Какой из этих методов очень часто используется в текстовых функциях? У нас есть левая и правая функции. Левый Возьму несколько персонажей. слева направо. Правильно пойдёт дальше и получит [03:12:39] несколько персонажей справа. В то время как Да, у нас есть соответствующий тип данных для ввода. Excel. Наиболее распространенный из них, который вам понадобится ever see is concatenate or concat. Большинство [03:12:51] Это обычное явление, которое вы там увидите. Что Функция concat делает это? Подкаст с котом состоится. и оно присоединится, да, оно присоединяется струны очень хорошие, можно соединить две или Чем больше струн вместе, тем лучше они соединяются. Итак, давайте рассмотрим пример, например, мы [03:13:06] снова подойдёт к столику клиента, поэтому Я снова получаю сообщения от клиентов, поэтому вот что... здесь от клиентов Напишите еще раз клиентам здесь. Смотрите, у нас есть контактное имя и фамилия. имя, которое мы хотим написать вместе, [03:13:21] Здесь я снова выберу вариант. в разделе «Выберите, что мы хотим сделать в первую очередь» Номер клиента, конечно же, будет получен. запятая получить имя клиента это имя поставщика, компании и внутри Это название нашей компании, вот наше биржевое наименование. [03:13:36] Итак, теперь мы набираем команду concat. Вот и конкатенация, все видят. Вот эта функция — конкатенация. функция внутри этой функции конкатенации I Я просто попрошу вас теперь объединить данные. имя [03:13:50] фамилию. Я назову это здесь так: полный [03:14:02] здесь. Когда я применяю конкатенацию Здесь функция, посмотрите на столбец "полный". Назовите и скажите, это что-то вроде результата? правильный? Можете просто взять и продолжить? Передать этот результат кому-нибудь другому? Это возможно? Есть свободное место. Видеть [03:14:18] Это возможно? Есть свободное место. Видеть Здесь у Карен достаточно места. Джанин здесь Здесь у Карен достаточно места. Джанин здесь Здесь есть место, у Диаго есть место Здесь есть место, у Диаго есть место У Йонаса здесь есть место, но не во всех случаях. Почему? [03:14:30] Почему так бывает? Почему у некоторых имен есть буква " Пробел в некоторых именах не нужен, потому что если я добавлю Пробел в некоторых именах не нужен, потому что если я добавлю Теперь в этом пространстве они каким-то образом собираются... есть лишние пробелы, верно? Так что мало, если я Добавьте сейчас немного места, и у немногих останется лишнее. [03:14:44] места, так скажите мне, почему у нас есть лишние? здесь места Сначала выясните, почему это происходит. Выглядит вот так? Почему это происходит? Потому что когда кто-то обновлял данные, верно? Они написали первый [03:14:59] имя или фамилия, и по ошибке они добавили дополнительные места либо до этого или после этого. Так что либо имя или фамилия - это дополнительные слова. пробелы до или после них. Из-за именно поэтому у нас здесь и происходит [03:15:13] дополнительные места. Поэтому нам нужно двигаться дальше и Сначала удалите лишние пробелы, а затем добавьте Сначала удалите лишние пробелы, а затем добавьте необходимое пространство. Итак, первое, что мы Для этого мы используем здесь функцию обрезки. Совершенно верно. Поэтому я пойду. [03:15:26] вперед и тип обрезки. Итак, что же это такое? Проблема с функцией обрезки здесь, в э-э... SQL? Нам нужно приступить к обрезке. Здесь указывается название отдельного столбца, на которое можно применить функцию. Мы не можем просто взять и охватить всё. [03:15:40] Мы не можем просто взять и охватить всё. Обрезать по всей длине конкатенации. Мы Придётся подстричь отдельного человека. Здесь имена. Итак, как только я подстригу его здесь, вы Теперь мы обнаружим, что у нас нет любые пробелы. Смотрите, я применил обрезку. [03:15:54] Здесь есть функция, и вы можете увидеть, что есть Без пробелов. после этой запятой здесь. Я напечатаю один ещё одна запятая. Сейчас у нас один... [03:16:08] Промежуток между символами. Итак, вот мы идти. Одинарные кавычки пробел одинарные кавычки прямо здесь. Одинарные кавычки. Введите пробел. Нажмите на пробел и Снова одинарные кавычки. И управление прессой войдите и скажите, что у нас есть полное имя. [03:16:23] прямо здесь, с одним правильным пробелом между. Значит, у нас это уже есть. Просто скопируйте и вставьте это сюда. Здесь также можно найти полный адрес в соответствующем столбце. Потому что у нас здесь есть адрес. У нас есть получил дизайн, эта линия 1 2 3 4 до [03:16:39] верно. Итак, мы хотим получить все это в одно-единственное место. Итак, давайте двигаться дальше. Чего мы хотели здесь добиться? Мы хотели Пожалуйста, найдите полный адрес. Так адрес здесь, я уверен, что у вас у всех есть Там это написано, верно? Итак, начнём. [03:16:55] Заранее перепечатайте это для других. Так после конкатенации и получения полного имени Итак, теперь снова наберем concat. Но в Здесь мы хотим получить конкатенацию. адрес. Вот адресная строка. один. Это вторая строка адреса. [03:17:11] город, община, штат, община, почтовый индекс. А затем у нас есть страна. смело записывайте это в качестве адреса. Пока что только один. А теперь давайте посмотрим на [03:17:26] выход. Хорошо. Когда вы смотрите на Что именно отображается здесь в результате выполнения? что это нулевые значения, то есть эти У нас нет адреса для этих объектов. Вот что нам здесь говорит о клиентах. Итак, давайте посмотрим, не так ли? [03:17:39] Адреса Карин и Джен здесь. Давайте разберемся, что если я пойду... прямо сейчас все клиенты, и я смотрю Эти люди здесь... хорошо, разве у нас нет... Адрес для них здесь есть? Адрес есть или нет, у нас есть адрес. [03:17:55] верно, однако, когда мы пытаемся объединять его, когда мы пытаемся объединить Это здесь. Мы получаем адрес? Нет, мы получаем там нулевые значения. [03:18:07] Почему нет? Да, совершенно верно. Почему это Это происходит именно так? Потому что что такое Что происходит при использовании функции конкатенации? Читать это можно здесь. Оно читает это здесь. Однако, как только оно достигает нулевого значения, значение во втором столбце, оно останавливается [03:18:23] прямо здесь и укажите нам нулевое значение в качестве отвечать. Так что всякий раз, когда... всё происходит присутствует всякий раз, когда в каждом столбце Если текст присутствует, он нам это дает. ответ, но как только он достигнет или проверяет наличие нулевого значения, если оно отсутствует [03:18:39] Идите дальше. Здесь всё заканчивается, и В качестве ответа укажите null. Это значит Функция конкатенации не может обрабатывать значения null. ценности. Компания Concat не справляется с проблемой нулевые значения. Таким образом, эта конкатенация не сможет [03:18:55] Это вообще не должно работать для нас, потому что так и должно быть. просто проигнорируйте нулевое значение и переместите на. Верно? Оно не способно это сделать. Это На этом этапе происходит сбой. Итак, что мы будем делать? Давайте теперь приступим. Первое, что нам следует знать, это как [03:19:09] для поиска нулевых значений. Как найти значение null ценности? Чтобы найти здесь нулевые значения, мы Здесь мы собираемся использовать очень простую вещь. Спрошу SQL, есть ли там нулевые значения? Мы можем просто спросить. Так что мы можем продолжить. и попросите его, чтобы он выбрал. [03:19:26] считать. Что здесь нужно считать? Подсчитайте каждый столбец. Подсчитайте каждый столбец, что бы мы ни делали. Здесь перечислены данные из таблицы клиентов. со столика клиента, где [03:19:39] где Вам нужно считать там, где находится адресная строка. Вам нужно считать там, где находится адресная строка. один из них равен нулю или один из них равен нулю или или вторая адресная строка равна нулю [03:19:56] Адрес, э-э, город отсутствует. и аналогично Поэтому оно попросит его пойти и... Проверьте, не содержат ли эти столбцы пустые значения. Итак, когда [03:20:12] Если мы попросим его это сделать, он нам сообщит. Да, имеется 113 нулевых значений. там. Это просто говорит нам, что да, там. Существует 113 значений, которые являются нулевыми. Так что, пожалуйста, посмотрите здесь. Теперь мы Нужно будет выяснить, как это сделать. [03:20:25] Мы здесь имеем дело с нулевыми значениями? Итак, мы имеют нулевые значения. Отлично. Я знаю, что у нас есть нулевые значения. Итак, как же нам с этим справиться? Таким образом, существует очень известная функция. называется pois. Функция Pies — это функция, которая часто используется для работы с нулевым значением. [03:20:39] ценности. Почему? Потому что это может успешно Игнорируйте нулевое значение. Оно также может При необходимости замените нулевое значение на любой текст, число или символ. Так что кис может может использоваться как вложенная функция с другую функцию очень легко. Итак, идите. [03:20:54] а сначала правильно выполните конкатенацию. и посмотреть, как двигаться дальше и, э-э, считать нулевые значения, а затем вернитесь сюда. Вы будете двигаться вперед с coies, Вы будете двигаться вперед с coies, верно? Итак, для начала посмотрите вот это. [03:21:12] Итак, как же выглядят эти запросы? Синтаксис выглядит следующим образом. Таким образом, тишина может быть Здесь применяется к любому имени столбца или к чему-либо еще. Струна, верно? А потом здесь мы можно смело задать этот вопрос кому-нибудь другому. заменить его пустым местом или заменить на [03:21:26] любой текстовый элемент или что-то подобное. Так что ко всякий раз, когда оно обнаружит нулевое значение Это просто произойдет. Какие компании будут делать? Кои продолжат проверку. non-null value. If the value is not null it will give that as the output. If [03:21:40] value is null then it will give you whatever you ask it to give as the replacement. So if you want it black, it will give you blank. Two single quotes without any space. That is blank. Okay. So let's go ahead and find it out. How [03:21:55] does that work? So I'm going to copy and paste it right here. I'm going to copy and paste it right here. And comma enter. What we want here is we want to go ahead and work with concat. But concat cannot deal with null values. [03:22:10] So we will ask here we will ask coalis here to go ahead and check is address line one is a non-null value. If it is a non-null [03:22:24] value we will type a comma here and we'll say if you find a null value go ahead and leave it blank. If there's a null value leave that blank. Now we type comma again and here we will go ahead and type co again for address line two. [03:22:42] For address line two in address line two if this is blank here go ahead and type na. I'm going to type a bigger na here so that I can show you that it replaces the value. Okay I'll type comma again. Now we go ahead [03:22:58] and check for check for the nominal value again that under queries if is if value again that under queries if is if city is null go ahead and give this as the replacement. Okay, I'm not typing anything else right now [03:23:14] because I want to show you how co works and I'm going to type this as address and I'm going to type this as address two. Let us see how does it work. [03:23:29] Observe everyone. Observe everyone here. Do you see NA is here? Meaning what is empty? What is null? Address line two. So wherever you see NA here, address So wherever you see NA here, address line two is null. If I go here, say [03:23:43] line two is null. If I go here, say here, everywhere NA is at address line one. We have the city name everywhere. We do not have any null city name till now. [03:24:04] right? Right now it is showing na everywhere. If I ask it here, let's everywhere. If I ask it here, let's simply go ahead and type a comma. Simply go ahead and type a comma with some spaces before and after. Then see how [03:24:18] easy it looks. See here how clean the output looks. Yes. So this is how polies output looks. Yes. So this is how polies works and yes it is a lot more work to type concat with coies. It does take some time. So go ahead and type concat [03:24:34] with quies everyone. And I will reformat this to show you it actually looks very good after reformatting and it and it is easy to follow also. So if I reformat this here, I will go ahead and reformat [03:24:48] this here, I will go ahead and reformat it with this here. follow. Now, now here when we uh now we have seen everyone that uh we can write [03:25:01] have seen everyone that uh we can write concat and co but it is not looking that good also because we have to go ahead and trim also. [clears throat] So when we are writing here concat and pois here we have to go ahead and trim [03:25:14] them individually too. If we are not trimming them up the problem is same. See we have too many extra spaces everywhere. So we have to go ahead and apply trim here too. So yes it does get tedious to [03:25:28] type. Okay it does get tedious to type. So what is the another way? So now what is the another way here which can help us to reduce the effort. write down here. So another way here is to use another function called as concat WS. [03:25:46] Concat WS WS means concat with a separator. Concat with a separator. Now why is it called as concat with separator? So let's see something here. This is here is uh uh city name, right? And this part here is the address line [03:26:02] one. So somewhere we have address line one, two and city name two. So now what is happening here is we are not giving any separator here. If we want we can. So after every comma here we have the choice to give any separator that we [03:26:16] want. We have a choice here. We can go ahead and give any separator that we want. So if I go ahead and type separators after address line one and after address line two right here this see can be can appear like this here. [03:26:32] Okay. So these are the separators that are appearing here. Meaning if we're using concat and poles together, we have the option to give as many separators we want and we can choose different types of separator here. [03:26:47] However, when we use concat ws, concat ws is going to give us exact similar output. It is going to ignore the null values. It is going to concat whatever we ask it to do. However, it will only give us option to write one separator [03:27:03] give us option to write one separator and no more. So, concat with coies can replace null with a message or blank, right? With multiple type of symbols and delimters. However, concat ws is going to be just opposite of that and it will [03:27:17] ignore null but it will give us only one type of separator and it uh will not give us an option to replace null value with any values or message. So we cannot [03:27:29] replace none with concats. So this these are few differences here. The best part here is our work does get easier. Okay, how it will get easier here. So this is how concats works. So this is concat ws here. Okay. In concats first here we [03:27:48] give separator any separator that we can define. Separator defining here means we can go ahead and type a comma maybe a semicolon in here or maybe just a forward. Okay. Whatever we want or just the hyphen like like this here. If I go [03:28:01] ahead and type a comma now. Now you go ahead and you maybe want to type trim. You get column number one here. Then you comma again. Then you type trim here. Column number two here. and so on. But the separator that we give here, it is [03:28:14] going to be only one. Separator can be any D limit, any kind of symbol right there. Okay. So let's go ahead and see how we are going to write it there. So here we go. I'm going to copy paste it here. I'm going to copy paste the same [03:28:27] thing here. And we add one more column everyone. We add one more column right everyone. We add one more column right here. Now in this column here after edges two, comma, enter. And now here we are getting concat. [03:28:40] This is concat with separator. So inside concat with separator first we have to define the separator. So let's give uh separator with two forward slashes so that I can show you where separator is coming up. And after this here we simply [03:28:53] need our address line 1 2 and three. So we are looking for address line one, address line two, comma we have got city, state, postal code and country. If [03:29:06] you want to type trim, you can. Currently, I'm not going to do that. So, here we have got address three right here. It looks easy to type. And let's look at the output then. [03:29:18] Let's look at the output. Everyone see here. This is address two and this is address three. It was easy. We able to get the proper output. And if I want to change the separator here, I will go ahead and type a simple uh comma right [03:29:33] ahead and type a simple uh comma right now. And it looks much better. it? But in real time what happens here is in [03:29:46] real time everyone we use concat and co together but it because it gives us flexibility to type whatever we want wherever we want. That flexibility we get in queries because every time we are not looking for one single separator [03:29:59] neither we are uh and some and sometimes we want to actually replace the null values with something uh some message out there or maybe we want to give a default value if something is not available in these type of realtime [03:30:13] cases we will use concat and coies more as compared to concat and co can be used with any other function whenever you want to deal with the null value. Yes, it is much easier to type concerns. Absolutely correct. I [03:30:27] to type concerns. Absolutely correct. I will also show you the reformat version because reformat version is easy to follow. [03:30:44] minus sign is you can actually go ahead and collapse them. You can simply go ahead and collapse them. So you will be only focusing on what you want to work with. It is still there but they collapsed. So you can [03:30:58] expand it, collapse it. So that's the So that's the reformatable. [03:31:14] brush remember. So in when you will reformat it uh observe that this is how the reformatted uh query looks like right. Select customer number concat [03:31:26] concat concat here all the four formulas are here right. So do you see this minus sign here? Do you see this minus sign here? This is collapse. So see here we here? This is collapse. So see here we can collapse the lines right there. [03:31:41] Saving on the uh saving on the screen path. So we we can simply collapse it if you want to focus on one single formula. All right. Yes, it is easier to follow but not easy to write. See here I am writing concat here and it is ending up [03:31:58] with the name. I'm typing concat only once. It is ending up with the name. In know what you're typing and from where. Can you copy paste from code share and compare first? So copy paste from the code share and compare what you are [03:32:13] will be able to understand what's going wrong. Okay. So here next function here is substring function. What is substring function here? Uh this is how the uh this is how the substring syntax looks like. As the name suggest what does it [03:32:29] do? It will go ahead and create a subset from the existing string. It creates a subset from the existing string. Meaning it uh see here we will pass the column to it. We'll ask it the starting position and from that start position [03:32:45] how many uh letters we want out or how many characters we want out. Yes, part of the string is retrieved. So if I simplify it, we simply extract a few letters or characters out of the entire string. Okay. [03:33:00] So for example, I'm going to type uh just like this first and then I will show you the example. So for example here if I am writing here [03:33:16] position a start position means this P here is one this R here is two this is here is one this R here is two this is three this is four 5 6 7 okay so if in [03:33:28] the substring here if I'll go ahead and I will get ask to go ahead and read the letter product delete The word product the start position is start position is [03:33:40] the start position is start position is three and the length here is four. So what it is going to type what is the start position here? Three. And how what is the length we need here? Four. 1 2 3 4. [03:33:58] So it will simply extract that position from that position till whatever length from that position till whatever length is there. 1 2 3 4. So that's how service works. So let's go ahead and see a simple example right now. So we will [03:34:12] work on the products table. We have got product code everyone here. So let's work with that. So here is our product table right here. So I'm typing from first from the products and here we have select right in the select here. I'm [03:34:29] simply taking the product code for now. And after put our code here let's type here substring everyone this is sub str sub string everything is same they work exactly same absolutely no difference in this substring here I will ask you to [03:34:43] read the product code and let me show you how the product code looks like okay this is how the product code looks like everyone [03:35:01] this is how the product code looks Okay. So this has here S is 10 1678 1949 263 and done. So what we will we are saying to the here is that go and read the to the here is that go and read the product code and start with the first [03:35:16] position and get me the four characters out of that. Start with the first position and get the four characters out of that [03:35:30] position. Including that it is getting 1 2 3 4. It's a simple sub string here. And whenever you are learning any new function everyone you can always ask for help. So you can go ahead and ask here help. Help with what? Help with [03:35:44] help. Help with what? Help with substring. actually going to give you the entire description right here [03:35:57] with the exam. Okay, and it will tell you that substr is a synonym for substring. Go ahead and get this please. Simple subring you will see an application of that. We'll see the application of that. [03:36:10] Yes, it is like of Excel. In Excel also you'll find substring. too. Let's look at the comprehensive example. [03:36:25] Let's look at the comprehensive example. Now so let's uh go ahead and generate a custom product everyone. Okay. Now to generate a custom product code here we want to combine few things together. First we'll go ahead and get the first [03:36:38] First we'll go ahead and get the first three letters of the product line. So this is the products table everyone. So let's look at the products table right there. In this product table here first we want to go ahead and get the first [03:36:51] we want to go ahead and get the first three letters of the product line that we will combine with that we are going to combine with a formatted by price to combine with a formatted by price with zero decimal. A formatted by price [03:37:05] with zero decimal. So we do have a buy price at the end right? We want to go price at the end right? We want to go ahead and format it by that format it by price without the decimal part. We will want zero decimal values there. Then we [03:37:18] will combine it with a reverse product code. Then we combine it with the unique code. Then we combine it with the unique reverse product. So this product code that we have with we will reverse it. Absolutely reverse the entire string. [03:37:31] Absolutely reverse the entire string. And we only want to view five first five rows. We just want to sample the five rows. You don't want to get the entire [03:37:47] 110 row to okay. So let's go ahead and break it down one by one. So first let customers. So from customers is fine from product is fine here. Now in select here we want custom product code. So let's uh begin [03:38:04] creating the code for these product names right there. Now we want to combine them together. If we are about to combine them together, we have to go ahead and type concat everyone. Okay. Now after concat here, what is the first [03:38:19] thing we are looking for? First three letters of product line. First three letters of product line. To extract the first three letters of the product line here, what will be the function? Left. So we will apply the left function here. [03:38:34] We apply the left function here and we ask it to read the product line and get three words from there. Get three words from there. And see here we are getting the three words out once we apply left. That is [03:38:49] first part done. Now let's go ahead and get the second part. We need now a formatted buy price without decimal number. So if we ask for the buy price directly here, if we ask for the buy price directly here, it is going to look [03:39:04] price directly here, it is going to look like this. We don't want decimal point. So what we will do here? We will format this. To format this by price here, the function is also format. Function is also format. This format is equivalent [03:39:19] to the text function in uh Excel. It is equivalent to uh the format function in PowerBI. Meaning this format function will convert any column or any passed [03:39:31] will convert any column or any passed field inside it and format that into whatever we want and most of the time whatever is the whatever the answer is right that answer will be converted into a text. So this format function you can [03:39:45] pass it any number and after comma you can go ahead and type whatever uh text whatever format you want it will convert it into that but the data type will be also converted as a text that is format function right there and see now we do [03:40:02] not have any decimals you can also go ahead and give a separator right here you can also go ahead give a separator right here so now we will see it like this so this is let function This is format function right here. Now [03:40:16] afterwards here I will type comma and we go for the third option here. What is the third thing that here is we want to go ahead and reverse it. We want to go ahead and reverse it. So we we'll simply go ahead and say that yes go ahead and [03:40:30] use reverse function right there. Inside reverse here we want to reverse the product code entirely. And remember to give the separator here. So we are giving the separator we reversing the product code right there. [03:40:55] reversing. Okay. Once you have reversed it here, what is the next way looking for? So this becomes our custom ID. This become this becomes our custom ID. This become our custom ID. So I'm writing this as [03:41:10] custom custom code. Okay. This is our custom code right there. This is the customized code. But do we want to re uh do we want to see uh here uh it like right? It's a code. So let's go ahead and convert this into caps. So numbers [03:41:26] we don't need in caps. S uh in here is already in caps. So we'll go ahead and simply the lift function that we have written there. We can encompass it written there. We can encompass it within the upper here. [03:41:40] You can en encompass the entire into these brackets or the parenthesis here. Now this looks like a code right here. That's the custom code. But remember that after all this here, we don't want to see all the rows. We only want to see [03:41:53] five rows. So we will go ahead and use here the last keyword that we have seen that is limit. And we ask it to limit the output by five rows. And we'll be see there are multiple functions inside [03:42:08] it. Type them one by one. and serial I will talk about format function format function reverse function because I will talk about the format function we [03:42:23] are using format function right now to display the zero decimal values left function here is simply taking the first uh three letters out from the left hand side of the uh sentence upper function is converting this into uppercase [03:42:39] reverse here is simply reversing whatever is written. So if it is written ABC, it will reverse that into CBA and then we are concating all together uh by then we are concating all together uh by typing the separators here. [03:42:59] format function in detail. When to use this format function? when to use this format function and what it is for this for first let's look at the syntax of the format function the syntax here looks like this inside the format we can [03:43:14] looks like this inside the format we can format any number to anything so if I we can go ahead and uh decide the decimal places with it right we can also define places with it right we can also define the local with it as per the zone so we [03:43:26] can go ahead and format the numbers in any type of format we want for example if you want to go ahead and we want a currency display. Currency display means ensuring two decimal points. So we can type a number comma 2. That's our [03:43:39] currency display. We need two decimal pix two decimal points there. Second here is we can go if we had a large number we can add thousand separators to it. Or if we want a localized number format. So maybe if someone is writing [03:43:53] currency in their own format, not everyone is going ahead and applying a thousand operators every time. So every country has a different nom to type the numbers and the currencies. So we can go ahead and define that too. Or if we [03:44:06] simply want to multiply by 100 and add a percentage sign there. So in these multiple cases we can use the format function right here. These are one of the many answers uh where we can go ahead and uh work with it. So I will [03:44:20] show you few examples here. I will show you few examples here. So let's take a very simple example first. So if I go ahead and type select. If I So if I go ahead and type select. If I go ahead and type select here [03:44:34] and in select here I will use format. This is format and let's say I will go ahead and type a big number. Okay. And I'm typing here as zero as zero. I'm typing this as formatted. [03:44:50] Okay. See it has added the th00and separators for us right here. Now if I want to add a percentage sign here, if I want to add a percentage sign here, what we do? We [03:45:05] again go with select here with select here. And now I will type format. Okay, here. And now I will type format. Okay, I will go ahead and type format. [03:45:17] Format. Inside format, let's go ahead and uh I'm writing let's say something like this. some decimal values right there and we multiply it with 100 because that's what we are looking right comma one I need one decimal here if I [03:45:33] go ahead and type it like this right we want to change it into percentage here so look at this what happens we see 76.8 eight. Now what I want I want to add a [03:45:45] percentage sign in front of it. To add the percentage sign in front of it. Now I will use concat here. I will use concat here. And after format we can go ahead and type the percentage sign right there. And it is going to concat and [03:46:01] type the entire column like this. So these are the few examples here. Okay. Go ahead and check out the format function. [03:46:16] question for you here. Okay. We all know about the products table, right? We have all seen the products table right here. And we know about the product line too. You know about the product line too. If I ask you right now, If I ask you right [03:46:28] now to get the average to get the average buy price to get the average buy price of each product line of each product [03:46:41] line here, how does the how should the output look like? What should be the table structure of the out? What should be the table structure of the output? Let's say you're creating that on pen or paper or in Excel. So how do you think [03:46:54] the output in the result grid should look like? How many columns we should have in the output? If we want average buyer price output? If we want average buyer price of each product line [03:47:07] here then how many columns we should have here? Which two columns? have here? Which two columns? Which two columns [03:47:37] an average here. Now in this product line here here what do you expect? In this product line here, what do we expect? Should we go ahead and extract the entire product line column from here to here? Should we go ahead and extract [03:47:51] it is? Should we simply copy paste it entirely same? No. What we will do here is we'll look for unique entries, right? We'll go ahead and we look for the unique entries [03:48:05] without any duplicates of course. So these unique entries here when we type these unique entries here when we type unique entries only here meaning each uh each product line should appear only once right. So that if it is classic uh [03:48:19] cars here if it is classic cars here and then we have got motorbikes here and uh we have got vintage cars here. Whatever we have in front of these unique entries we have in front of these unique entries we will only have one associated average [03:48:34] number right here. Correct. So this kind of reporting so we all know this is how the reporting has to be done. So this kind of reporting is called as aggregate reports. These are called as aggregate reports. Okay. So [03:48:49] these are are called as aggregate reports everyone. Why? Because we're aggregating as per individual data point. We're aggregating as per individual data point. Right? If you have learned Excel, it is exactly what [03:49:03] pivot table does. If you have learned Excel, this is what exactly pivot table does. So how do we create these kind of reports in SQL? This is where group by [03:49:15] comes in. This is where group by comes in. We haven't touched it yet, right? you there is group by and having. So this is where group by comes in. What group by will do here is group by will go ahead and simply fetch the unique [03:49:31] go ahead and simply fetch the unique list of any categorical variable. Group list of any categorical variable. Group by fetches the unique list unique list of any categorical variable any categorical variable that what the group [03:49:47] by will do okay and we already know if I we want to do any kind of calculation that calculation is done within the select query that we are aware about. So that is fine that is done by select but group by will be the one who is going to [03:49:59] fetch the unique entries right here. So last example everyone let's go ahead and see how group by is applied here. So we'll go ahead and we apply group by right now. So what we want to get we want to go ahead and get the average buy [03:50:13] price of each product line. So first thing that we do here is we type select in select here uh we are working with the product table here. So let me go ahead and type product first and after select here let's expand it [03:50:30] here and we will get the product line here. After product line here what we calculate average. Average average of what? Average of buy price. So we'll ask it to get the average of buy price. Here I'm calling this here as average. [03:50:47] Okay. However, after from product here, we have to use group by here. Why group by? Because group by has to inform select [03:50:59] that do not fetch the entire column. So when the select is in the select, group by will tell it that see you're not supposed to fetch the entire column. I will go ahead and pass you the unique list of product line. So remember that [03:51:13] whatever categorical value you write here, it has to be written here too in front of select. Okay, because select is the one that decides the output table structure. So if we are grouping it by product line, product line has to be [03:51:28] part of the output. So group by will actually pass the unique list of product line to select and then select will go ahead and calculate the average right here. So once I execute this here, you will find the average right here. Of [03:51:44] course, it doesn't look good. Okay, so we can round it up or we can format it out. So it all depends on you what are you looking for. So currently I'm you looking for. So currently I'm rounding this off here. [03:51:56] So this is how group by works. Now why I have taught you group by because I'm going to give you multiple practice questions with the where where the group by will be used. Okay. So let's begin here. So what we are looking for here is [03:52:10] let's go ahead and say for each country for each country let's figure out that for each country what is the average credit limit what is the average credit limit and while we are looking for it we want to see only the top five and we [03:52:27] want to go and see the top five let's go and see how to solve it so first thing we have to understand is we are going to use classic models we have to make sure that the classic models is default All right, once you set it that as default [03:52:40] here, now let's uh break it down here and breaking down here. First, we want to go ahead and get uh two columns here, right? First column should be country. Second is average credit limit. Then it is asking for top pipe. We'll see how we [03:52:53] will get to the top five. First, let's sort country and the credit limit right here is we have to work with the customers table right here. [03:53:17] select what so we need country we'll go ahead and get the country right there and comma we need average right here so we'll calculate average for now average for credit limit everyone now this much we understood and we can name this here [03:53:31] as average ated count. Okay, till here everything ated count. Okay, till here everything is fine. However, we need aggregate the entire country column. We need unique list of country there. So, I'll [03:53:46] go ahead and ask it to group by and country right here. Now, this much we understand from our previous example. So, this is it. Uh this doesn't look good. Why? Because it has got too many decimal points right here. So, let's [03:54:01] round it up here. We have we already know about the round function everyone. it to round it by the two decimal it to round it by the two decimal points. Right? [03:54:19] limit method. Now in this average current limit here we want to see top five. Now how do we get top five here? This is where thing uh this is where it is very very interesting. Remember our select query right here right in this [03:54:32] entire select path here this group by right now after group by here we have order by and limit order by means sorting. So after by after afterwards here if I want to go ahead and see who has the highest or the lowest credit [03:54:46] limit which country has the highest or lowest we can simply ask it to order it by. So if we go ahead and ask it to order by meaning sort this particular output this result grid output here by what? by average credit limit. So we can [03:55:00] simply go ahead and write the name here. Since average credit limit is already a name inside this aggregate report order by works when the select has on uh when the select has given us the output. So in the output average credit limit this [03:55:14] name is taken as name of the column there. So if I go ahead and ask it to order by credit limit and we execute this right here it gives us everything in ascending order. Okay, it is giving us an ascending order by default. [03:55:31] So if I want to see who has the highest, how do we get the highest here? We go ahead and we get the descending order. So we go move forward here and we order. So we go move forward here and we define that that go ahead and give us a [03:55:45] descending order. Now here when we define descending order, we do see the top here. See, but we don't want all the 110 product rows here. We are not looking for all the rows out there, all the 27 rows [03:55:59] here, right? We don't want that. And so what we do, we go ahead and ask it that okay, I don't want to see all the rows here. Limit the rows by five. Now, what >> [clears throat] >> rows here means we will go ahead and use [03:56:14] another keyword that is limit. Limit is pretty simple. Okay, limit here goes ahead and simply limits the number of rows from output right there. So this is limit five. The moment I put limit five here [03:56:28] and execute this, we have top five right here. This is limit. So it is just in succession everyone. So right now we have each country average limit and we want a top pi to get the top pi. We will use the order by and [03:56:44] limit. Okay, very simple. We have simply talking about the group by and we have joined about the group by and we have joined with order by and after the order by [03:56:57] remember the sequence we will put the limit where we want to go ahead and limit the rows in the output. It is always written in the end of the query because this is the last thing we [03:57:09] Let's go ahead and see it just uh quickly once more. Okay, just a quick review here. What is the order of execution here? Auto execution that have to go ahead and do anything about it. Since we know about group by here [03:57:24] and we will soon see having also here understand when these queries are actually executed in the back end. Whenever you're writing a query, even like select everything from customers table. It will first go ahead to your [03:57:39] address. What is the address here that which particular database it is and which particular table it is? it will first go here and then it will go to all the columns that you're asking for. If you're uh giving a database uh filter so [03:57:53] it will go to the address inside the address it will go ahead and then put the filter there. Maybe you want every from everything from USA. So it will go to the address it will filter out all the rows from USA and then it will go [03:58:06] ahead and select the columns for us in the output. In the similar manner it will go ahead and execute everything out here and then it goes to select. So once calculated output that you want there and these are the columns you want [03:58:19] there. Once this is done then the remaining answer or the output is sorted and chosen that which how many rows we want to view. So this is the order of execution. If we know this order of execution and we understand this here, [03:58:34] it will help us to write the queries properly. At least help us to uh break down the query and understand that what goes where and which one of the queries is helping us to actually apply certain conditions. [03:58:48] So this is the order of execution. Here I will go ahead and uh share in the session materials but at the end of the session I will share a write up okay which will talk about the order of execution in detail. But that is uh what [03:59:01] limit everyone. Okay. And this is the group by. So we'll move forward and uh we'll talk about group by and having here sales rep. We have uh customers [03:59:13] here right. So let's go ahead and count the number of customers mapped to each sales rep representative. So what we want here is that for each country for each country we have got sales representative and we want to go ahead [03:59:26] and count the customers for it. So we need first country column and then we need the sales representative and then we want to count the number of customers. So far we have only written one category uh categorical variable [03:59:40] here and we want it to group by just by one. Now we'll go ahead and add the sales representative too. Meaning we want the select to filter out by two columns here. one with the country, one with the sales rep and then count the [03:59:54] number of customers mapped to each of them from each country. How do we write that here? One thing is simple that we are working from customers that is there we are working in the customers table. Now within the [04:00:09] select here we want to select country. This is also fine. After country here now we are looking for one more categorical value that is too big for me. So I'm going to go ahead [04:00:22] and give it a smaller name here. Next here is we want to count the number of customers. Next we want to go ahead and count number of customers. What should we should be counting here everyone? What we should count here? If [04:00:36] you want to count number of customers, what we should count in the third column out of the customers table of course. Okay, we have two options right now. Anyone else? Right. So remember that we uh we want to keep it easy. We can go [04:00:51] ahead and ask it to count count customer number. However, we can go ahead and ask it to count anything. However, we can go ahead and we can ask it to count anything any uh column right here. Why? because we uh if it if it go ahead and [04:01:05] count any of these columns here it will still count the entire rows. We can ask it to write count as strict means we simply go ahead and count the entire rows in the entire table. Of course it has null values and we'll have a [04:01:18] different answer. So count customer number seems uh quite why not name because name can be similar. So it might not count all the rows out there. So instead of asking it to count something else, it is uh it'll count customer [04:01:34] unique. Yes, primary key wants it. Correct. So count customer number and Correct. So count customer number and I'm going to name it as customers uh customers mapped because these customers are mapped to each of the [04:01:47] representatives to take care of. So here we will go ahead and type customers. [04:02:05] it done? We have to group it by. So when we are writing the group by everyone, when we are writing the group by here, we want to group by by country, right? So country, comma, we want sales representatives. So we'll go ahead and [04:02:18] representatives. So we'll go ahead and get comma here and after this here we will we can order it by okay so let's order it by country then let's ask it to order it by country. Now when we ask you to do this here look [04:02:32] at this what we see right now that Australia has only one resales one sales representative here and there are five customers mapped to that person. Similarly when we move uh below here we see USA right now and within USA [04:02:47] we can uh clearly see that we have got multiple sales representatives here and they have been mapped with exactly six persons each. So likewise you can see [04:02:59] Switzerland has uh these many customers but few customers have not been mapped we do have null values. all the null values will show up right here and telling us that there is no sales representative mapped with these 10 [04:03:12] representative mapped with these 10 customers in Germany like this. Now this is a simple group by in this group by here we can go ahead and uh write two categorical variables right there and we can still get the correct answers. While [04:03:26] increasing what if there are 10 columns another has got employee number another has got your employee name then you need uh their month details quarter details their sales target and whatnot. So if [04:03:40] the number of categorical variable increases okay how do we pro there is one more way to write one more way to write this see this very very carefully see this very very carefully here till here [04:03:55] everything is going to be exactly similar till here everything is going to be exactly similar now see right here remember that in group by and select whatever we type whatever we type in select if I'm typing two categorical [04:04:10] variable and select exactly those two categorical variable has to be mentioned in group by for example if you will mention if you will say that no it's here but I don't want it to group it by I just want list there it cannot happen [04:04:25] it has to group by both the categories here otherwise it will try to grab the entire uh row of thousand customers maybe right here and we have just 27 countries so we have to go ahead and write the exact number of categorical [04:04:39] variable right here and the exact name too. So to avoid the conflict in the errors here, there is one more way to write it. Before I write it there, do you understand that in this result grid country is the first column. Do you [04:04:51] agree to that? In this result, sales rep is the second column and customers map is the third column. It's the similar manner we type here. This is uh the first column we want. So in the select query, we write country as a first. If [04:05:04] we want sales employee number to be second column, we type it on the second space. We want count as the third column, we type count at the third place. That's how we write. Do we agree to that 1 2 3 number of columns here? Do [04:05:18] is in the output is 1 2 and three. So what we do here is this. We go ahead and we say that okay do one thing. Group it by group it by the column one comma [04:05:30] by group it by the column one comma column two and order it by order it by in this example let's order it by uh customer mapped that is the column number three column number three right there we can go ahead and write it like [04:05:44] this too so if I go ahead and execute this right now we still get the same order you get that in descending order too right there see okay so go ahead and see that Here this is one more way to type your word by queries and yes order [04:05:59] by also understands the column number here because select by then has already here because select by then has already given it the output. So see how do we go can go ahead and get the group by done with two columns plus uh another way to [04:06:13] type it. Now here now here all right let's add one more condition to this. Let's add one more condition to this. Now we want to see to uh customers mapped. Now we want to see customer mapped. [04:06:26] We want to see the countries. We want to see the country list. see the country list. Country list where customer mapped to Country list where customer mapped to sales reps are more than five. Okay. [04:06:42] Only the country list where customer mapped are more than five. So in this case here of course I'm talking about uh what the output that we are looking at what the output that we are looking at here but please tell me one thing [04:06:55] uh where do we apply the filter on which particular column we need to go ahead have to apply the filter where customer mapped is more than five. All right. So on which column do we need to apply this simple mathematical uh filter comparison [04:07:09] filter customer mapped are do we all agree that yes customer mapped. Okay. Where is the customer mapped present? Is it present anywhere in the uh database [04:07:21] or customer map is present right here in the result output. It's a calculated field. It is in the result bit output. We do not have any customer mapped named column here. Right? It's a calculated field here. So [04:07:34] whenever we have an aggregate report created with the help of group by and we created with the help of group by and we have some filter to use here inside the calculated group or aggregated uh option here okay where group by is already [04:07:48] fetching the unique list in this case we always give the filter with having we always go ahead and give filter with having why because we have to give a filter exactly on a calculated value aggregated value here. So now inside [04:08:03] having here having clause here is used to give the filters only on the aggregated reports created with the help of group by. So here we can say having customer greater than should be equals to five. When we go ahead and write that [04:08:17] here. Okay, this is it. See we getting uh customer uh countries here with customer not greater than five. We can go ahead and ask it uh that can you go uh ask it to order by one here and uh see [04:08:34] and uh see we have got country right here. Okay. So this is how having is used. Remember that having is a filter clause meaning this filter clause here can utilize all the operators that we have seen so far [04:08:46] and learned with be. This is having clause everyone. Remember that uh this having clause that we are looking at right uh this uh clause here is avoided if we can avoid it with the help of wear clause. It says that because having is [04:09:02] uh executed once the group buy and select and calculations all are done select and calculations all are done then only the having takes effect. then only the having takes effect. That's why it is avoided. If we can if [04:09:14] we can apply it with bear we will apply where not with here because once you beautify this here it looks really good and and legible you [04:09:27] can read it easily how many product line that that we have here. Okay, we have got classic cars, vintage cars and trucks, buses, ships, planes, trucks, buses, ships, planes, motorcycles and more. Okay. However, [04:09:40] what we are asking here, it is asking here that they don't want to see classic something else. They simply want these from the list. So, first we will figure out from. So, which table are we working on? We have figured that out very [04:09:54] easily. We are working on the products table there. Fine. Now, from the select here, which columns do we want in the output? What should be the first column? We need product line with average MSRP. Meaning the first column has to be [04:10:08] product line. We agree to that there. And after this here we want to calculate And after this here we want to calculate average MSRP right there. Now after select here we have to group it by we agree. Okay, we understand that we have [04:10:20] to group it by two and we have to group it by the product line right here. We want to group it by the product line right here. However, now uh things will be different. What's different here? Now it is asking here that it doesn't want [04:10:33] all the things there. It simply want to go ahead and filter out only these list. go ahead and filter out only these list. So tell me here how do we filter out the entire list everyone? What do we use to filter out from entire list? We use wear [04:10:48] clause here, we use the wear clause here. Why are we using where clause? Because which column do we need to go ahead and filter out? It want to filter out every row which contain these four names. Which column contains these four [04:11:02] names? Everyone product line. So we need to go ahead and bring the product line. Since product line is present in the database, we will be using the wear clause. Great. Now tell me which operator helps us to filter from the [04:11:16] list because we have to go and ask here that go and check the entire list and if anything is present from the entire list go ahead and give me the output. Right? Very good. We will use n operator here. We use the n operator here. Perfect. So [04:11:31] now we have covered almost everything. Last is determining here average price less than 100. So whatever average MSRP we have seen here. All right. From whatever output we have there, we need to go ahead and filter that also. [04:11:48] So if you want to filter this here, what do we do? We will go ahead and use having. Why you are using having here? Because we are using this average that we have that we have calculated out. If we want to go ahead and calculate it out [04:12:01] average, we want to filter this out if the average MSRP is less than 100. Are are we leaving anything out the first line everyone? The alphabetical order of the product line. So we can go ahead and we can order by order by what [04:12:16] product line we can type one right. So this is the product line we want to go and order. That's how we type it. So first I'm here. Here we know we are looking for product line everyone and we want to uh [04:12:31] product line everyone and we want to uh type average there and rounding it off. I'm rounding it off here. Easy to write it together and this is here as I'm taking this as average and here [04:12:49] talking about from the products right there after from products here. Now we go ahead and write where clause because select from and where. So in the where here we'll say and go to product line here and find it out where any of [04:13:06] line here and find it out where any of these names are present. [04:13:22] We have to go ahead and get the single quotes right there. After where is done now we go ahead and type group what we can type one and in [04:13:34] the having here we cannot say having find out the two greater than three we have to go ahead and write the entire name here where average MSRP has to be less than 100 and uh let's figure it out is it 100 yes we do have the option [04:13:49] there now we need to order it by so we can simply ask it to order by here write order by one here it will be order by one right there go ahead and check [04:14:04] by one right there go ahead and check this out please and I would try to reformat this two after reformatting reformatting it does look better reformatting it does look better allegible [04:14:20] so now we will go ahead and we learn about a little bit about the date functions too and we will talk about group by roll up and sub totals to there. So we're going to talk about two things. So first thing is we will go [04:14:33] ahead and see how do we add the sub totals and totals there while we also delve into some date functions. Okay. So the first question here is we know we want to go ahead and figure out total [04:14:48] number of orders placed each year in the orders table. So what we are getting here is total number of orders is fine. Yes. Yes. We have to because see here it [04:15:01] is asking us not only total number of orders it is asking placed each year in the orders table. So if we go ahead and we look into the orders table. If we go ahead and we look into the orders table everyone we'll see that orders have been [04:15:15] placed every year. Orders have been placed every year. Yes. And almost every day. And every day there are multiple orders right here. [04:15:27] ahead. We have to extract the year and then we get to count the number of order then we get to count the number of order each year. So let's go ahead. [04:15:39] What do you think we extract the year with? Which function can we use here is that we want to go ahead and get everything from the orders table. So [04:15:53] this is the orders table right here. Now what uh what two columns we want here. So inside the select per year first we want to extract function. See the year function right there. Yes. I'm going to go ahead and [04:16:07] there. Yes. I'm going to go ahead and extract the year out of order date. Okay. We are going to name this as order year. So we can name this as order year. Comma and what we want next we want total number of orders. So how do we get [04:16:23] total number of orders everyone? We use count right we go ahead and we ask it to count there. So you go ahead and ask that see this is the count function. Go We don't want to add them up. We simply want to count them that how many are [04:16:38] there. I'm going to name this as orders count. Okay this is our orders count right here. Here [04:16:55] has to be aggregated. We have to extract the year we need list of the unique years. So we go ahead and ask it to group it by. So you have to group it by what? First column. We can directly write one here. We don't have to go [04:17:08] ahead and write everything again. So we can simply write group by one. when we write group by one here we get 2003 4 and 5. Now this is something very easy uh easy to do and understandable too. Now what we want here is we want to go [04:17:23] ahead and add the grand total right here. We want to go ahead and add the grand total of the orders count right here. So what happens here? We have to how do we add that up? If we want to go ahead and see grand total through and uh [04:17:38] see grand total at the end, we will simply go ahead and use the rollup. What is the roll up here? So we will go ahead and write that I want the group by done. But at the end I will write want it with rollup with rollup is the entire [04:17:53] keyword. Once we add it after group by here and we execute it, it gives us the grand total right here. And no we will not be able to go ahead and uh replace this null value with the grand total or some name there because it is not the [04:18:07] part part of the order right here. So this is group by one with roll up right here. So go ahead my uh get this please date and go back. The caution that I'm pasting here is okay it simply means [04:18:21] which day we are having the most number of order placed because if someone knows that accordingly they can roll out the offers discounts and everything read it offers discounts and everything read it first completely find out which day of [04:18:36] first completely find out which day of the week has most orders. What is meant by most orders? Means most number of orders most number of orders are placed. Meaning number of orders are placed meaning we need to go ahead and count [04:18:50] the orders true for each day. Then only we'll have the answer right and Sunday, Monday, Tuesday. When did we had the uh most days there? So 50% there. So how do we go move forward this one? So we will go ahead and type select. And we already [04:19:05] are aware that we want counter there right? We want counts again. So I will we know we are looking it from uh the orders here and we have to group by the days that we have there. [04:19:18] days that we have there. So this much is fixed. This much is fixed. What we want in front of count right now? We want the count to be done by individual day. So let's figure out which function is going to help us. [04:19:31] So if I go ahead and type day right now look at the list and here we'll find day of the week. So once we find the day of the week here we'll go ahead and ask it that extract the day of the week from the order date right here and I'm going [04:19:47] the order date right here and I'm going to call this as order day. day. Now in this order day here from the orders group by one this is what we get. [04:20:00] So uh we want to find out most count of orders. So let's order by two. So I will go ahead and write order by right here. Let's order it by the second column. That is the counter there. And that's the order by let's make it descending. [04:20:14] And now we know this is the highest. The only problem is I have no idea what day number six is. Is it Monday, Tuesday, Wednesday or what? Because uh I cannot say that this one is Monday or Sunday. No idea. So we have to find it out [04:20:31] whether this six is what whether one is a Sunday or a Monday. When does the week starts here to figure that out here? Okay, we will go ahead and uh add one more thing here. After day of the week here, let's go ahead and see one more [04:20:46] function called as day name. Day name particular day. So here we go and ask that go ahead and get the day name here. that go ahead and get the day name here. I'm going to call this as order [04:21:00] day name. Here we go. Now here since we are adding one more categorical variable in group I will say group by 1 comma 2 and we want to find out who has done the most right which day has the most. So now we say [04:21:15] count as a three here. So I'll say order by three right here and sleep here we have. So six is a Friday the day starts from Sunday. Go ahead and get this please. There are more date functions out there. Now here [04:21:30] let's go ahead and see what if they we want here that count of orders placed in each month of each year. So again we want count of orders here. So this is going to be similar. So this much is going to be similar. [04:21:44] The only thing that is going to change here is the functions. here. What we want here is that we want for each year and month. So order year [04:21:58] here and then we want to get order month. Then we want to get order month. Okay. Now first here is year. We are aware of the year function there. We can go ahead and type the air function right here. And we are good with that. Now [04:22:12] let's go ahead and find out another function which can get us month. and month name. Now it is quite evident if we take month it will give us numbers. So let's go ahead and get the month name there. [04:22:29] So there here it is. We have got month name here. See this is order month. And of course we have got two things here. Year and month both. When we go ahead Year and month both. When we go ahead and execute this right here, it gives us [04:22:42] two columns right here. Order year and month. And fortunately this other month that you see here, it is properly sorted to in proper January, February and March to in proper January, February and March right here. [04:22:57] we are good here. So this is order and month right there. However, however, what if instead of writing year and month in a separate, we want to go ahead and write it in a formatted manner uh in one single column like this. Meaning I [04:23:14] as a separate column. Instead of this year, how about we want to write it something like that. This is 2005 here and maybe January. Okay. So, we want to go ahead and format it in one single column. So, how do we [04:23:28] it in one single column. So, how do we format this in one single column? Format this in one single column. Again, this part is going to be sum, right? This part is going to be sum. What is going to differ right now is the [04:23:41] selected statement. Is the selected statement here. Now, we select a statement. Count is fine. What we want is a formatted value here. So if we wanted to customize the date format, we will go ahead and use the function [04:23:53] called as date format right here. And inside the date format in the syntax right now, we'll go ahead and pass order date because we want to format out of the order date. What we want to format here, we want to go ahead and get the [04:24:05] year and month out. Yes. So we can go ahead and give formats like this. So you can go ahead and type percentage uppercase y a hyphen there and then percentage uh uppercase m there and close the [04:24:21] parentheses right here. This will become as our order year and month. So this is looking for here. So this becomes our order year and month. So that is our [04:24:36] first column right there. Okay. Let's see how does the output looks like. Here we are. All right. First year and month separate here and then we are getting year and [04:24:50] month together in one column formatted properly. So it's a custom format every there are many ways to use this custom date format. Let me show you here what happens if we go ahead and instead of upper case what happens if I go ahead [04:25:04] and uh write lower case because now we understand here that if I'm writing M here as in the upper case right now we have written M as the upper case here right what we are getting in the output entire name of the month correct and if [04:25:19] we are typing here Y in capture we are getting the entire four digits of the year so what will happen here if we go ahead and type all of this here in a smaller case in a smaller case right here. If you go ahead and type it like [04:25:34] this here, observe right now what is happening. Both of them are in numbers, right? Both of them are in numbers right now. Meaning and that two when we typing last two digits. We are getting only last two digits here. And M is now [04:25:51] written as a number. So if you want to go ahead and let if you want to go ahead and properly write it, maybe we can uh change it a little bit. Even we can go ahead and write it like this that this should be y here right and uh this m [04:26:08] here can be a numbers either this is a combination or maybe we want to go ahead and get the abbreviation of the month so if you're looking at the abbreviated if you're looking at the abbreviated month name like jn m a r d c like that [04:26:22] then we will go ahead instead of lowerase m here we type lowerase b and when we type that we get it like this here and it does not require required that you always write percentage y /b there hyphen b there we can always go [04:26:36] there hyphen b there we can always go ahead and mix it up okay when we say mix it up here maybe we want to type b first and buy later it will come up like that and buy later it will come up like that okay so go ahead and find it out [04:26:51] okay so go ahead and find it out go ahead and check it out please help you in understanding things here or maybe you can ask AI to explain the [04:27:06] concept to you with some examples but when you're working in real time first part is sudanchu we will not be able to give the data base structure to it however it can help us write the base queries for us it is good for practice [04:27:20] measures but in real time uh if you want AI to work with you you have to give the entire detail to it so unless your organization is not giving you any internal AI application to you. Never ever use AI for your organizational data [04:27:36] and with AI it is not faster. Why? Because you have to check check it by whether AI is giving you the right answer or not because no matter how powerful the AI is even perplex perplexity that writes in the bottom [04:27:50] that this is AI fact check it first and then only believe that it is correct. And uh I have seen that in my experience also AI not always gives you the correct code. You have always have to go back and cross check it. For beginners it [04:28:04] and cross check it. For beginners it does look faster. Uh but it isn't because now there are the epics to use AI and of course it's a danger for AI and of course it's a danger for organizational data too. [04:28:17] So let's go ahead and find this out. So next here is a very simple question everyone. We want to go ahead and find out how many average days are we taking out how many average days are we taking uh between order date and ship date for [04:28:30] each month. Every month, how many average days are we taking to ship something? Meaning once we get the order, how many time how many days does order, how many time how many days does it take us on an average to ship it out [04:28:42] it take us on an average to ship it out of the warehouse? Okay. So that it can then take that many days to reach that person. So what is the average days between order date and ship date for each month? But we want to focus on [04:28:54] wherever we are taking more than 5 days to process an order. Okay, this is where we want to focus on. Can you please go ahead and try that by yourself? Can you give us the difference between the two dates? [04:29:09] here is we have to go ahead and first get the month here. So we can go ahead and type select here and we can ask it to get month. So we taking month name [04:29:21] out here month name out of what order date. Now till here this is we going to date. Now till here this is we going to get order month. Okay after this order month here we want to go ahead and calculate uh difference [04:29:35] between the dates here. Correct? No. So to get a difference between the dates here I will type date here and see we have got date date date add date format date sub here and date diff date diff everyone date diff is the difference [04:29:51] function here you will find that in excel too so in the date diff here okay it is very straightforward it will ask you to the last date first so we will go ahead and find the difference between two dates so please understand what we [04:30:05] are trying to say here is I want to see that how many days we are taking between this order date and the shipping date. See here if someone has given the order on 6th January and we are shipping it out on 10th January. How many what is [04:30:19] the difference between this? How many how much difference of date is there? 4 days. Right? Now similarly we want to go ahead and do this calculation for each and every row. Now what we want to do here is we want to go ahead and we want [04:30:32] to do this calculation for each and every row. And then for for example January here right. So for January here we want to go ahead and do this calculation here. See this is the whole January right? Now once we have done the [04:30:45] okay what is the uh difference between these here we want to go ahead and calculate this average difference that you have calculated for each and every day for each month right there. So we want to do two calculations here. One is [04:31:00] row wise calculation. Second here is we want an aggregate calculation within that. So let's go ahead and solve it step by step. The first thing that we are looking for here is in each day we want to see the difference between [04:31:15] shipping date, order date, right? Uh see right there. Now here when find the difference between the two here. First thing that we do is we want [04:31:27] we don't want the to add a calculated column in the extracted table. Now we are looking forward to calculate an average out of it. So we'll ask it that whatever calculation we will do here go ahead and calculate the average of date [04:31:43] right there. So this is we get the average difference of days here. Average difference of days here from where? So let me type here from orders table here and of course we need to go ahead and [04:31:57] group it part. So here I'm typing group by one that is month. Let's look at the output for now. Here there are too many decimals again. So we need to go ahead and round the top. So we'll go ahead and round it up. Here we ask you to round [04:32:09] round it up. Here we ask you to round the entire function. And here we go. here this is the number of days we took to ship something right there. Now what [04:32:24] we want we want to focus on average where that that is more than 5 days in days. We have to go ahead and apply having here. And having here we can say having average difference of days average difference of days is greater [04:32:39] than five. We have got one month only that is 2%. and give us the proper difference between the two dates. here it sometimes [04:32:55] between the two dates. here it sometimes also get hold of the liier if you go ahead and yes uh see yes you can ask it to go ahead and minus the shipping date to go ahead and minus the shipping date with the order date you can do that [04:33:09] try uh and uh when when we type it like that okay there are few discrepancies function here so let me show you about this function right here so if you ever want help right you can simply ask for help by writing help like this that help [04:33:24] you with the data function there. Once you write this what you get you get the description of it right. So in as you can see here this is the syntax everyone can see here this is the syntax everyone what we see in the syntax here [04:33:41] Okay, it is the it will give us the value in days from one date to other. Expression one and expression two are date or date and time expressions and used in the calculation there. And they're also giving us a simple example [04:33:57] they're giving us two date and timing there and we are getting the answer and we getting the answer in number of days right there. So it works with time too and a simple minus will not work on time. Okay. [04:34:12] So this is dat difference between date here. This you will find in uh Tableau. You will find that in Excel. You'll find this in PowerBI almost everywhere. In Excel it's a hidden function not shown there in the sequence. [04:34:29] It is more fun to type in Excel because you cannot see it there. And in Excel it will also give you an uh variation. Okay. In Excel you can actually see the Okay. In Excel you can actually see the differences in years or months. or days [04:34:41] and PowerBI also it is quite interactive and excellent PowerBI and Tableau also it gives us multiple options and find >> I need to have a column name for it to [04:34:53] work yes you do need the underscore there you cannot have a spaces because it doesn't if you give single quotes it thinks that uh it it is some text it doesn't understand that as name you got it it [04:35:20] simply show sub totals here so with the rollup here we have uh seen sub totals here so we have got year and month separate remember if we go ahead and add with rollup with rollup here and we have two categorical variable variables we uh [04:35:38] will go ahead and get subtotals in between. See between. See okay we get sub totals in between. [04:35:51] So after every year you'll find a subtotal for 2003 for example here then you go ahead and get subtotal for 2004 then you go ahead and get subtotal for then you go ahead and get subtotal for 2005 year and then an grand total. So [04:36:03] write like this you will get the uh sub totals and grand totals here if you have two categorical variables. So sub totals are automatically added [04:36:23] here because by default okay when we are using the this engine here it doesn't allow us to replace these null values here. So there are few preferential settings and the admin access we need here to change that and then only we get [04:36:37] to replace the null with coies. We can easily replace the null with coies here will not allow us to do that but for that we need a professional version. This is the free version that you're working use not complete code [04:36:53] created here uh a small aggregate value here where we are saying that this is the person one this is the person two and this is the person three right and uh these people have been hired on contract and they have been uh paid uh [04:37:10] here everything in thousands okay everything in thousands here so they everything in thousands here so they have been paid 2K, 3K and 5K here. Done. [04:37:22] But uh so here we have got more people here. we got to know about that they have been employed for different purposes there. [04:37:36] different departments here. So now we will go ahead and uh add the department name here. So these people hide both department one here. These for department two here and this for department three. Done. Now if I ask you [04:37:52] department three. Done. Now if I ask you here to give me uh totals right now. So tell me how much total we have paid so far. So how will you get the grand total here? How much total we have paid so far? What [04:38:04] How much total we have paid so far? What will be the grand total here? We add that up everything. Right? So we have here so we have here 5 [04:38:16] 5 10 11 12 and 13 right very good so we are adding up it to 13 right that's grand total but if I ask you now here that okay tell me department wise how how much we have paid here then give me sub totals also so how do we get the sub [04:38:30] totals here so we have to go ahead and write some uh thing along here what is the subtotal for department one there we have to add a row here what is the subtotal for department two add a row here what is it subtle for Department [04:38:43] three here. Add a row here. Correct? So, what's the subtotal here? Five. What's the sub total here? Six. What's the subtotal here? Two. So, we have to add a there. That's the total for department one total right there. Department two [04:38:56] total right there. And likewise. So, that's what rollup is doing for we don't have to do this. This is what rollup does for us. It will go ahead inside it will give us the total and the sub total for us. [04:39:10] So we don't have to define or do calculations. It knows that it has to go calculations. It knows that it has to go ahead and add everything up. now? Next here we are moving forward everyone for logical statements. Right [04:39:26] there. What are logical statements? We have seen comparison operators. We have seen and or between where we can go ahead and uh find comparison operator one single statement and then and or in between we can filter out with more than [04:39:41] one condition. Right? Then why do we need logical statement like if else and case and when or in this case here we have got if function there we have got if function there. Why do we need if and case and [04:39:56] when? Remember that with the help of comparison operator and uh with the logical operators out there we will we were able to only filter out by those conditions here. Logical statements are used when we want to go ahead and add a [04:40:11] logically calculated column or a logically calculated column within the data uh within the result grid. Here for database, right? In this customer database here, we want to go ahead and [04:40:28] their credit limit, based on their credit limit, we want to give them uh credit cards that if you belong to this particular limit here, we can offer this credit card. However, the calling team that we have there, the uh basic sales [04:40:45] team that we have there, we cannot simply go ahead and share the credit details of some customers. We cannot do that. So, we have to go ahead and uh get that. So, we have to go ahead and uh get customer name. Customer name. All right. [04:40:59] Their contact. Their contact. Their contact plus which Their contact. Their contact plus which credit card they are eligible for. which credit card they're eligible for. All right, we cannot simply share their [04:41:14] credit card score with someone or credit card eligibility with someone in a sales the credit card eligibility that these are the cards that you're eligible for, right? Have you received these calls that they know your name, they have [04:41:27] their contact number, they even have your email ID, they know which credit cards you're you are eligible for. Okay, we all have received those calls. So we because we can go ahead and say that let's see if your credit limit is more [04:41:41] than 75K we're offering a gold card. If it is between 50K and 75K then we are than that we are offering you a silver or something else. Right? So what we are [04:41:53] doing here is we're simply checking the number and writing an output. We not doing any calculation. It is a simple logic we're applying here. So when we want the such kind of logics applied here we go ahead and we use a another [04:42:06] option here is uh for example we want to go ahead and uh assign the you want to go ahead and assign [04:42:21] So if uh so uh right now the season is going on okay those who are working those know that appraisal season is going on. So maybe now they want to go performance they want to give us a performance category. They want to [04:42:35] assign a category to us good, bad and uh good, bad and and uh excellent. Okay, whatever logic they have with them. So when we want to add any kind of where the if and casement comes in. First we'll go ahead and look into the [04:42:51] in Excel, you already know about the if function. It is exactly the same here. here, this is how the syntax looks like. This is how the syntax of the function looks like. Inside if here if function, [04:43:05] condition that you're looking for? And if the condition matches, if the condition is true, what is the value you want to give? If the condition is false, what is the value I want to give here? This if function right there, this if [04:43:18] This if function right there, this if function right here helps us to check one condition and give two outputs based on that. If condition is true, what is the output? If condition is false, what is the output there? And if we want to [04:43:31] go ahead and uh we want to check if we want to check multiple conditions and we want multiple outputs, then we have to go ahead and use nested. We have to go ahead and use nested or we resort to case and when [04:43:46] is easier than nested. Okay, let's go ahead and solve it out. So first thing that we see is that uh we will see customers here. We assign them [04:43:59] will see customers here. We assign them the categories based on the credit limit the categories based on the credit limit right there. There we go. So first let me explain. Okay. So let's [04:44:14] statements right there. And logical statements and the functions. First statements and the functions. First we're going to talk about if here. If is pretty straightforward. Okay, we have to give a condition and the output value if [04:44:26] the condition doesn't match here. So let's go ahead and apply individual customer. Okay, which credit card do they qualify for? So we will simply give them two categories, right? We'll say that they are high credit. They are high [04:44:41] credit if uh their credit limit is above 50K. All right, we'll call them low credit if their credit limit is less than 50K. So there there's 50,000 or below here. So let's see how do we go ahead and get that. So here I'm writing [04:44:56] select in select here uh we are getting it from where we getting it from the it from where we getting it from the customers table here. So once that is established now we can go ahead and [04:45:10] get what we want. So from the customers here let's get their customer number also let's get their name here and then we are looking for their credit limit. Now in front of credit limit here now we want to add one more column where we [04:45:24] have these categories assigned. So now we go ahead and type the if function [clears throat] Now we open the everyone. And what is the condition here? Condition is that go and check the [04:45:37] credit limit. If the credit limit is greater than 50k, if it is greater than 50k here, if it is greater than 50k here and the [04:45:50] condition is matching, go ahead and type high credit. Go ahead and type high credit. If it's not matching, so value if true, that is high credit right here. [04:46:03] if true, that is high credit right here. And if a response here go ahead and give And if a response here go ahead and give local as the output as the output right there. So we are asking if function here to do that. Of [04:46:16] there. So we go ahead and give it a name here. So I'm going to give the name here as customer categories. You can write the entire name too. the entire name too. And see we have a calculated column. [04:46:29] logic application right there. I will beautify this so that it looks better. Right? See how easy it is to understand now. So go ahead and get this please. now. So go ahead and get this please. Simple logical function right there. If [04:46:43] next question here is go ahead and try to solve it by yourself first. Okay. Uh just solve it with me. We'll solve it step by step. It says that assign a performance category to employers based on their job title. What are the [04:46:56] conditions here? Condition here is if someone is president okay we will give them a category of top management so not performance category let's give them management categories that's correct and if they are manager any manager right if [04:47:09] there any kind of managers out there we'll call them management and if there president we'll simply go ahead and call them staff okay so uh tell me here first tell me here which table are we talking [04:47:23] about here which table we have to work with employees table right very good so one first thing that we have figured out is that we have to work on the employees table I'm getting this out [04:47:36] here now we go ahead and type select now in select here which columns do are we in select here which columns do are we looking forward of course we want to see the employee number right and we want their name [04:47:51] there for here and let's we of course looking forward to their job title We need these three columns, right? Yes. Now tell me how many conditions are there that we need to check right now? Because after job title here I am we we [04:48:07] need to go ahead and type if there okay but if can check only one condition and how many conditions do we have to check here right now? Three. So how do we check these three conditions? Right? We write the nested if. So before I go [04:48:20] ahead and write the nested if here maybe there are few newcomers out there. I will go ahead and explain it here and then we I will go ahead and type it out right because when if I type it out directly it might look a little bit uh [04:48:33] complicated. So we will first start with if everyone right inside the if pair we have to give a condition. What is the first condition here? President right. So we can go ahead and say that if if the job title here the [04:48:49] job title here is equals to pres president here. If it is equals to president here and if this is true if you're following that in that row president is written there. And if it is true here, what we want in the output? [04:49:02] true here, what we want in the output? Top management. everyone? What if this is false? Then what do we do now? What if job title is not president? What we do then? Then we ask SQL here to check for another [04:49:17] condition. Right? We ask you to check another condition. So if we wanted to check another condition here, what is the next condition? In the job title, somewhere manager has to be written. How do we find this kind of uh condition [04:49:29] everyone? We will check one more condition here. So how do I go ahead and write this condition that somewhere manager should be there in their job title. How do we write that? Wild cards. Absolutely [04:49:43] right. So we can go ahead and say that job title might be like anywhere manager has to be written. Anywhere manager has to be written. So here when we are another condition. Okay, we have to go ahead and after this value if true when [04:50:00] we it will ask us value if false we will have to go ahead and type if again since asking go ahead and check if job title is like manager if this is the second condition we are giving here again we have two options either this is going to [04:50:14] be true or this is going to be false if this is going to be true here what is the output management we want them to write management If this is also false. So the first condition we have given that is false. [04:50:29] That's why we are checking second condition. If second condition is also false, what happens? What do we do now? Next here star. We simply go ahead and ahead and tell them it's a star. That's it. And now here we close our f that we [04:50:47] also closed the f that we have written the first time. So we have to take care of parenthesis here. Okay. So if this is the parenthesis we are closing for this and this parenthesis of if we are closing it for here. So this is nec. If [04:51:03] you have more conditions keep on writing more conditions there and keep on writing if every time we check a new condition. So go ahead and see let's go ahead and see here how do we write the nested appear. So we follow the syntax [04:51:15] here. So we are typing here if inside here we are asking you to go and check here we are asking you to go and check is this job title is equals to president [04:51:27] if it is president what we want in the output we wanted to write top management right there we ask it to go ahead and type management till here everything is fine now comes the catch here because we type a comma again and we type if again [04:51:41] and we ask it here that now go and check another condition what's the another condition that go and check job title again but this time the job title should go ahead and find out manager now that manager can be written anywhere I have [04:51:54] no idea so that manager can be written anywhere in inside the entire phrase if job title is like manager there we type a comma again and uh we want to type management in the output [04:52:10] now if it is not the top management not the management it is simply First stop you go ahead and type a stop right now. We close the bracket here. First bracket and the second bracket right there. And I'm going to call this as management [04:52:25] I'm going to call this as management category. [04:52:37] Okay. So right now I'm going to beautify this so that I can show you properly. See if if and likewise you can keep on writing multiple conditions right here. One thing that you have understood here is [04:52:51] while typing nested if we have to remember by ourselves what to write type where we are not getting any help for the syntax like we would get in Excel right we can when we write something Excel actually guides us with the syntax [04:53:04] SQL doesn't do that since SQL is not doing that for us here the best way to work with this multiple conditions is case and when and we'll go ahead and see [04:53:16] how do we use case and when statement to apply are multiple conditions. Great. So writing nested step is going to take a lot of time and a lot of attention right there effort. Instead of that we use case in a statement. So let's see uh [04:53:31] what for understand case and when here this is how case and looks like the syntax here everyone it simply says that here okay the case statement starts with case and let me write when in so whatever we are working in inside that [04:53:46] whatever we are working in inside that when condition one is there uh if condition one matches then give the output one if condition two matches then the output two and else here it's quite easy to follow true so So let's go ahead [04:54:00] and get this from here. So uh we will go ahead and use three. Same customers table. Again we assign the customer categories based on the credit limit. But this time we'll go in detail. We give them the credit cards. Here we are [04:54:13] giving them gold credit cards eligibility. If they're above 75K we're giving them silver category here. If they're between 75 and 50K and if they are below 50K here, okay, we are giving them bronze. [04:54:31] there if they are below 50k. So let's go here and see how does that is similar. Okay, we know that we are working from customers table. I will get this out of the way. And now we go ahead and we type select [04:54:48] in select here we can ask you to get customer number, customer number, customer name [04:55:02] when. So here we are adding that case. See it's a keyword right there. And now See it's a keyword right there. And now we go and type when. Now what is when in uh when here we are will define what we're looking for? The first condition [04:55:15] that we're looking for the correct limit should be greater than 75K. Okay, greater than 75K. If it is greater than 75K then then we want to give them the [04:55:27] gold credit card. They're eligible for that. After this here we go ahead and we type in when again credit limit here. [04:55:39] If credit limit is between here is between how do we go ahead and type between how do we go ahead and type between here. If credit limit is between between 75k and 50k here and 50k here then we are [04:55:55] giving them silver right here. Else meaning if none of these two are true here we can go ahead and type else. Else if none of these are [04:56:07] and type else. Else if none of these are here go ahead and give them bronze. If none of these uh conditions matches, go ahead and give them blotss. Here everything is uh is done right. But since case and when we will go till [04:56:21] infinity like this we have to go ahead and tell SQL that see this is an statement and this statement ends here. So we will go ahead and type end just to tell SQL let's see this ends here and after ending it we have to go ahead and [04:56:35] thing cannot get go inside the name here. So here we are writing a [04:56:47] right there from the customers table right so this is how we are writing case and rent I'm write I was writing that in one single line okay and this is how it one single line okay and this is how it looks like after reformat everyone okay [04:57:01] so uh simple practice practice exercise everyone we want to find out and check whether the customer has a sales representative assigned or not. Remember uh we had uh multiple null values when we checked it right now with the group [04:57:15] by. So we want to find out assigned or not. First thing is simple. We are working in the customers table. Okay, that is fine. We are also aware that if we select here we simply want to see whether the [04:57:28] customer has been assigned a sales representative or not. So this is what I'm getting here. Of course, I'm going to write this as sales rep since it's to write this as sales rep since it's too long name here. [04:57:44] whether the person has been assigned or not. Let's see. Find this out here. not. Let's see. Find this out here. We'll simply go ahead and ah use if function here. How do we decide that? First tell me how many conditions do we [04:57:57] need to check. Let's understand here we have just one condition. What is the one condition? One condition here is if customer has a sales representative. If customer has a sales representative here, there are two outputs where we can [04:58:12] condition and we get the two outputs condition and we get the two outputs there. So this is how we work here. Now here we will uh if I have one condition and two outputs, we use if function [04:58:24] right here. So inside if here we will uh what do we ask? How do we ask this? We simply ask it here. Then go ahead and check if this sales representative check if this sales representative is null. That's it. Because we are [04:58:39] automatically getting the customer number and name here and sales rep. We'll ask it if sales representative is null go ahead and type not assigned. [04:58:51] Otherwise type assigned because if there is a number there it is assigned. And uh is a number there it is assigned. And uh let me call this as a status. wherever there is a null value it says not assigned. [04:59:10] this looks much better. There are other ways to type it too. I'm not saying this is the only way. Okay. Uh I have to observe one thing here. Even when we are learning about group by we are learning about the statements out there. We need [04:59:23] to go ahead. We are still working every time on one single table. every time we're working on one single table right what if we have to go ahead and find out [04:59:35] for example we are working right down here okay we have got customers table and all the tables out here what if I want to find out that which sales rep has given us uh the maximum sales so because in the customers table we don't [04:59:48] have any sales data but we do have sales rep data here in employees we can find the name of the employees too in employees table we can find name of the employees here. But from where do we get the sales data everyone? How do we get [05:00:02] the sales data that how much sales has been made? Total amount the customer has paid that has been assigned to them. Which table do we need for that? Where we can find out which customer has paid how much and when or how many number of [05:00:15] orders that person has placed under that sales representatives. So we have got orders table here right after orders table we have got payments table here that how much that particular customer has paid for that. Okay. So [05:00:29] right now we have orders payment date customer number. So if I want a very simple answer now this is a very simple and direct question. If someone will ask it I want to see that how our sales representatives have performed and how [05:00:41] much sales uh their customers have done so far. It seems like a very good direct question here. But the problem is now we are not working on one single table. We want to go ahead and work with multiple tables together. Now how do we do that [05:00:54] here? Because in the form here we don't want to use one table. We want to go right there. So when you go ahead and want to work with multiple tables here, this is where joins will come in. This is where the concept of joins will come. [05:01:10] Now what is joins here? Join here is very simple. Okay, it goes ahead, it merges the two tables there and remember it merges two table only at once. It can merge only two tables together. Okay, so it merges the two tables there and in [05:01:23] the output it will give us one big single table. It will give us one big single table that is joints that is joints. Okay, how many types of joints are there in my SQL? We have uh very [05:01:37] basic four joints here. Okay, very basic three joints here. first is left join, right join and inner joint. These are the three joins that are present in MySQL. There is one very specific join for MySQL and that is called as cross. [05:01:51] So when I say that this present in my SQL here. So now when we say that these are the joints present in MySQL, I mean that the keywords are present. I mean that that the keywords are present. Direct keywords are there. If I say left [05:02:03] say right, it will do the right joint and so on. However, in general when we talk about data models there out there and database out there, we have some other joints too. For example, full order join. There is something called as [05:02:18] full order join here. But this full order join is not present in MySQL as a keyword there. So, we have to uh go ahead and uh use a permutation combination of other keywords to uh make a full auto join. Right? So, full auto [05:02:33] join is not present directly as a keyword in my SQL. is present in MSQL. It does present in MSQL, Oracle and others. Other type of join here that we can perform within MySQL and uh and anywhere else also is [05:02:50] self join. And if you want to go ahead and do a full order join inside MySQL, and do a full order join inside MySQL, there we go ahead and we use union for you. We'll understand about this union keyword too. [05:03:05] about joints there. Now how many of you are looking at joints for the post time? concept here first. So let's go ahead and understand what joins are. I'm going to reshare my screen here. You should be looking at an Excel sheet. Okay. [05:03:27] about the common when we talk about merge the merging the two tables here. Okay. We cannot merge unless we don't have a reference column. All right, we cannot merge two tables unless we don't have a reference column. So before we [05:03:40] move forward, let's understand the what is meant by merging of two tables here. Okay, let's talk about that. As you can see here, just focus on what I'm trying two tables everyone? We have got order ID and customer ID right here. [05:03:55] Yes, we have two tables here. Now in this order ID, right? Now we know that these are the orders here. These are the orders placed for these products and course, we want to go ahead and analyze it there. But uh here when we have [05:04:09] observed that the customer name is right there, customer name is here and more number, address, phone number and all that. More details of customers are here. So why to keep two tables here? Okay, if I want to figure out that who [05:04:22] has placed the highest order here, I would like to know the name. So we want this customer number to be fetched right here. Okay. So, we want number two which is placed on the right hand side of the sheet here. You want to [05:04:37] fetch the customer name right here. If I want to do this here, if I want to go ahead and do this here, can we simply go ahead and copy and paste it right here like this? Is it correct? Can I simply go ahead and copy and paste it right [05:04:49] here? Because I want to merge two tables here. Is it right? Why not? Why it's not right? What do we need to do then? Customer IDs are wrong. Yes. Right. We paste, right? We cannot just simply go ahead and copy and paste. We have to go [05:05:05] ahead and match the individual customer ID too. Meaning we need to have a common column. What is the which one is the common column we have here? Everyone, what is the common column we have here? Customer ID. [05:05:19] this is a common column here, how do we work with it? We'll go ahead and read if this is CR1. Yes. Now we will move from here to here and we'll check. Okay. Uh, do we have a CR1? Yes, we have. What's its name here? John. So, we will go [05:05:34] ahead and copy and paste. Right. Copy and paste it right here. Now, we check will check again. This is John here. We'll go ahead and paste it again. If this is CR2, we'll go ahead and find CR2 here. Okay, this is Peter. This is CR3. [05:05:48] here. Okay, this is Peter. This is CR3. This is uh here. This is CR4 here. And we'll get it there. This is CR3. CR4 here. We are matching them right here. here. We are matching them right here. Now, do we have CR6 here? [05:06:01] Do we have a name of CR6 here? So, what do we do here if we don't have a CR6? [05:06:13] It's null. There's nothing there. Do we have a merge table right now? matched at everything and we kept it now. What about others? those who are [05:06:25] looking at after a very long time or for the first time. Do do we understand what tables together based on a common column. Yes. Now observe one thing here. We are uh when we were fetching everything here did we even cared about [05:06:41] this CR5? Currently we have currently in the CR5? Currently we have currently in the merge table here. Do we have CR5 in the merge table? No. It means you compromise this data set [05:06:56] for this current analysis. For this current analysis, do we need the name of this person here? Why don't we need the name of this person right now? Because this person has not done any sales yet. No need of that because this person has [05:07:10] not done any sales here. So if there is no sales here, we don't need uh uh it's their name too. Exactly. Because it is not part of the sales table yet. This kind of merge right now. So what we have done here we have made sure that all the [05:07:24] rows from the left hand side table are intact. All the rows from the orders compromising any data here because this is our main table. Okay. So we are keeping all the data and rows intact here. And we are only fetching the [05:07:37] here. And we are only fetching the matching data from the table number two. This kind of match is called as left join. This kind of merge is called as left join where we'll make sure that we are keeping all the rows from the left [05:07:51] table and we have only matching values from the right side table there. This is called as left join. Do we understand left join right now? Yes. Now can you please tell me if this is left join what will be the right join? The opposite is [05:08:07] going to be in the opposite right join here. will keep all the rows from the right side table here. Okay. And we keep only matching values right here from the left side table. Right? Now, right here in [05:08:21] this particular scenario, right join is not a good choice. And uh 99 95% of the times you will be using the left join and there are very rare cases where you will do the right joint. Very rare cases out there. Okay, that is right join [05:08:36] is left and right here, what is inner joint here? inner join is it will keep only matching values from both the tables here. Meaning we will not fetch tables here. Meaning we will not fetch CR5 neither CR6. Why? Because CR5 [05:08:50] doesn't have a name. CR6 doesn't have a name here. And this CR5 has not done any sales here. Has not given us any sales here. So in the inner join here we will not be fetching anything which is not common. So we keep only common rows [05:09:05] here. Okay. So this is inner join. So this is inner join everyone. Right? If this is inner join here, uh is it the right choice for now? Is this the right right choice for now? Is this the right choice for in this scenario? Yes. Is [05:09:19] inner join a better choice? Let me show you here. Okay. When we do go ahead and do the inner join here, what happens? We have not even compromised one. We have compromised two details here. First is this person has given us the most sales. [05:09:34] We didn't have any name of this person here. But this person has given us the most sales there. We have compromised our data set because of the inner joint. our data set because of the inner joint. Okay, it is just like the inner joint. [05:09:46] So here in inner join here we are compromising a major detail. Most of the time in the real time we will stick with the left join here. Why? Because in the inner join we most of the time we'll be compromising our data set just because [05:10:00] of few values or few details are not available. So it doesn't matter if I have the name of the customer or not there. But if I have the customer ID, I can figure it out later. Right? So that's what inner joint is. What is [05:10:13] is like intersection in my diagram, yes, it will look like that intersection. Yes. So this is inner joint. Right? So now we have made sure that we have measured everything from the right side. In the inner joint, we have the common [05:10:28] the values. Of course, we do not have null values, but it compromises the data set. Right? What is the full outer zone? What is left? Which permutation combination is left? Right? So what happens here is full order join. What is [05:10:43] left? We will keep each and every row from both the table. It will going to give us too many null values and too many details which are not required. So most of the time full order join is also avoided at our cost. So the types of [05:10:56] joins that we have seen so far. So in MySQL we have understood that there are uh basic joints are there like left outer join, right, right outer join, inner join and pull outer join. Other than these four basic joints what we [05:11:10] than these four basic joints what we have seen course self join is also written here. What other join we have heard about? We are also clear that inner join, left join and right join these are the three [05:11:26] key words that are present in my SQL. Pull auto join is not a keyword that is present. Neither the self join is a keyword that is present. These both are the concept which uh these both are the concept of merging the table together. [05:11:40] concept of merging the table together. However, pull join is achieved pull out However, pull join is achieved pull out join is achieved with union operator and join is achieved with union operator and self join is achieved with inner joint. [05:11:56] cross join. So yes cross join is a keyword that is present with us within these myql here and this will differ with each platform. So left right join and p order join that is present in msql [05:12:10] and other places but not in here. So let's go through the concept here. I quickly because we will go ahead and do the hands-on practice that will be much better than that. So what is inner join [05:12:24] here? Inner join is the one where uh we will get only the matching values. Only the matching values are will be given in the output that is the inner join. What is the left join here? Left join conclude uh will make sure that we have [05:12:38] all the data from the table number one and we are getting only matching data from table number two. What is the right join here? In the from the right hand side here and all the data that is matching from the table [05:12:51] number one. What is the full auto join? Full auto join doesn't care. It will simply go ahead and grab all the rows present in both the tables. So these are the four basic joins everyone. Now we'll go ahead [05:13:04] and we'll see the hands of workers. So we are at debug bench everyone and today we are at debug bench everyone and today we will see in detail and remember that while we are learning about joins here right we'll go ahead and create our own [05:13:19] small table so that we are able to understand how to type join better. So with the joins here we will also learn about DDL that is data definition language. Okay. [05:13:35] definition language. Here we are going to create a database. Inside database we are going to create tables and inside the tables we'll go ahead and use DML and we will insert rows of data inside it. Okay. So first we start here. We [05:13:52] start a small and then we go ahead and join them together. Let's first go ahead and create database. Right. We create the schemas here and understand joins how to write them and the variations of it. Okay. So first here I would like all [05:14:07] of you to just view things here because I'm going to show something and how to I'm going to say that I want to go ahead and create a database. I'm going to name the database as DB joints because we're going to learn about joins. So this is [05:14:20] database we're using for the purpose of joins here. I am not executing it right now. Inside this DB joints here I will make sure that from now on we will be using DB joins as default. After this here we will say that I want to create a [05:14:35] table here? We want to create a table in DB joins and dot. So when we talk about creating a table here basically we go ahead and we prepare the structure of a table. To create a table here we go ahead and we [05:14:49] create the structure of a table. What comes inside the structure of a table? When you type a create table here, first thing that we do is we go ahead and we give it a database name and then the table name that go ahead inside this [05:15:03] database and create a table with this particular name. And inside that table, inside that table, we want you to go ahead and create column number one which should have a data type like this number, a string and date. We have care, [05:15:19] integer, big integer, date, date and time. All those are data types. So we'll go ahead and assign the name to each column here and we assign the data type too. And like this we will keep on going and giving the column names and [05:15:34] everything else here. So what we do here is we go ahead and we prepare the structure of the entire table just by writing this here. Remember that we are only creating the structure of a table. Yes, we only creating the structure of a [05:15:48] table. It is still empty. So we'll go ahead and uh create a table here everyone. So I'm writing create table. This is the database name. Let's uh create a simple table here for employee info which we can all relate with. So [05:16:00] employee info here. Uh of course the first column we can think about is employee ID. Employee ID here. And let's keep the character four here. That employee ID will be of four characters. We are keeping it easier. After employee [05:16:14] ID, we can have the employee name there. Employee name can be of variable characters. Every employee name is going to be different. So we can say maybe a burden can go to 50 and then their skill set what they are working with. So we [05:16:27] will go ahead and keep that as car again and this is 52 because these are the skills that we are talking about they are also going to vary and then we have their experience. Experiences can be in um years. So we are keeping it integer [05:16:42] for this purpose. So this is a small table a structure that we are se creating right here. Now see here we have created a database. We have created a table but I'm not going to execute any of it right now. After creating the [05:16:55] table here we are inserting the values. Now how do we insert the values here? To insert the values inside a database here we again go with the same structure. We say that see I want you to go ahead and insert the database. Insert the values [05:17:10] into the employee info table where the employee info table is. Employee input table here is in certain database in a certain table and what we want to enter here we want to go ahead and enter the values. [05:17:24] will go ahead and actually write individual row there. So for example we'll go ahead and type that column number one data for row one. Then we [05:17:37] have uh again a column two row two data. So for example here we have a skill set. Third is the skill set. So we'll be typing the skills here. What is the experience? We're typing the experience in years. We type a comma. This is just [05:17:50] first row. Then we go ahead and we add a second row. So maybe we this is the uh employee ID there. And here we go. This is some name there. And now we have got a skills there. We give the skills there. And here we have [05:18:06] give the skills there. And here we have some experience. Like this. We'll keep on moving and writing individual rows. We'll keep on moving and typing individual rows right there. This is how we insert the values of row by row. So [05:18:18] if we have four columns there, we will be typing four values. So here we go ahead and type insert and enter into where into DB joins info right here into DB joins info right here. Now inside this here we want to go [05:18:33] ahead and add up the values and how does the values look like. So here we go. We the values look like. So here we go. We can say here that this is a123 here. That's the employee ID we are giving with four characters. Since all of this [05:18:47] is either alpha numeric or it is right now pure numerical here or alpha numeric or the alphabets here we have to type it within the quotes there. If these are in numbers the numbers will go right away. [05:19:02] will be written without the quotes because it's a number it can be read as a number. Now like this we'll go ahead and type each and every row here. So if this A1 to three here maybe this A1 to four here and more names and SQL [05:19:15] follows. So I'm not going to type all the rows here. It is going to take a lot of time to type each of that. So I have pre-written rows of data here and we are here done here. So now what we have done we [05:19:29] have went through we have created a database. We went ahead and we created a table right there and we inserted the values. Now how do we go ahead and and very carefully everyone. I want everybody's attention here please. I'm [05:19:45] going to go ahead and select all the three statements together. These are three different statements. Right? See the semicolon here. Right? All three are them all together. And we are going to go ahead and click on the first [05:20:00] lightning bolt right here. Why first lightning bolt here? Because this means lightning bolt here? Because this means execute all. This means execute all the selected rows. So we'll go ahead and click on execute all right there. So it [05:20:13] it will go ahead and execute them one by one. One by one and it will be executed right here. So I'm going to click on here. Look at the output everyone. nothing will be shown in the scheme. So we have to go ahead and and refresh it. [05:20:29] we have to go ahead and and refresh it. Once we refresh it we see it. See and inside this DB joins here you'll find the tables and inside tables you'll have the columns [05:20:41] I'm going to go ahead and provide you this right now go ahead and execute all with the first lightning bolt here is the remember select all the three great now let's go ahead and create another table okay another table will be [05:20:56] ahead and type create table because we need two tables to join everyone we'll again and again we are going to create table of 50 joints here and let's name [05:21:08] it employee salary. So we'll have the employee salary details here and I'm going to call this as column number one as employee ID because that's what we need here. It is going to be exactly similar to here because data type has to [05:21:21] similar to here because data type has to be similar. It is the exact same exact same column name here. Now here we need designation there. This is designation. It can be here. It is the name of the designation there. Let's [05:21:33] give the maximum 25 here. Meaning maximum 25 characters can be inside this particular designation name. And we have salary details. So we'll go ahead and keep the salary details under float is decimal if okay remember that [05:21:48] here. So that's here we have created a table. Now inside this table let's go let's insert some values here. So we want to insert the values inside the DP joint zip. This is the table here and we're going to go ahead and set some [05:22:03] values here. Remember three columns, three values everyone. So first is employee ID. So let's say the employee ID is uh 1, two, three here and let's say their designation is 01 for example and then what we have salary. So I'm [05:22:19] writing some random numbers here and sal here. So again let's go and type A126 here. So again let's go and type A126 here and maybe table will two. [05:22:31] And again another number here for their salary part. Here we go. This for their salary part. Here we go. This is another employee number here. Let's say they also belong to L2 here. And again a random number here for the [05:22:47] salary part. Let's add one more row uh right now. So there are too many. Okay. So here we go. I'm adding one more part here. [05:23:00] I'm adding one more part here. And this person belongs to L3. So these are different designations right now here. And let's have again a right now here. And let's have again a random number right here. [05:23:17] rows we are adding up. Okay. So this these are the four rows. Uh let's go ahead and create another table. How do we create another table everyone? We will go ahead. We select everything. We'll go ahead and we select everything [05:23:30] right here. Okay. And we execute all together. Once I execute all together only once, we refresh the table here. We get to see the employee salary right here. Okay. So, how do we go ahead and [05:23:44] write join everyone? So, to write join here, we again have a syntax. The way to type it. How do we type joins here? We start with select as usual, right? But we want to go ahead and get data from two tables right there. So first thing [05:23:59] going to show you how the tables look like. So this is the employee info table everyone. This employee info table has how many rows? Five rows right here. Right. So this is our five rows from the employee joints table. Let's look at the [05:24:12] employee salary here. It has got four rows. It has got four rows right here. So this is our second employee salary table want to go ahead and see how to type a [05:24:24] ahead and merge both the tables together. If we are type now we are want to move forward and see how to join the tables together. This is how we type it. First we start with select. We start with select and in front of select right [05:24:38] now we'll say I want all the columns from the merge table. We have no choice for now about the columns because you have no idea which columns are there are going to come when we merge it together. After here we go ahead and type from. [05:24:51] Where do we type the joints here? inside the from because two the from keyword will inform that okay this is we have to go and get the data set now in the from here we need data from two tables here so you'll say that go and get go to the [05:25:05] employee info there now where the employee info is employee info is in the DB join so you'll say go to DB joints and go to the employee info and then join it with the second table so what type of joint we are looking at so let's [05:25:18] say we are first looking at here the left joint we are first looking at the left joint So we type the word uh keyword here left join. Now which one is the second table? Second table here is again that go DB joins and employee [05:25:31] salary. This is our second table right here. Is this enough information? Now we have to go ahead and also define which one is the common column. So we go ahead and we type here using. Using is a keyword which will inform which one is [05:25:47] common column between the two tables? right now employee ID. Yes, thank you. So we go ahead and type employee ID here and then [05:26:02] we close the statement right there. Now why are we writing employee ID here? Why we are able to write the employee ID here? Okay, for a very simple reason that we are simply informing right now seeker that see I want you to merge the [05:26:16] these two tables together by using the employee ID column and that employee ID column we are mentioning it only once because the spelling of common column is because the spelling of common column is similar it's exactly same common column [05:26:31] similar it's exactly same common column is exactly same in both the tables real time this doesn't We do not have the exact same name for [05:26:43] now. We have it. So we are going to go ahead and execute it right here with simple uh bolt or control enter. And look at the left join everyone. many rows do we have here in the left join? Five. Why five rows? Because [05:26:59] employee info is my left table and this contain five rows. So here we will also have the five rows. And look at the right side table. Here we have null values. Only the common uh rows here only the [05:27:14] common rows here are having the values written properly till the end. However, you must be wondering that why we are typing DB joints DB joints multiple times here. Okay. If you will go ahead and you make sure that you are making [05:27:28] sure that DB joints is a default then we don't have to type that. We can then type directly. So if I want to go ahead and type directly here, we again go type a strict science and we'll say that from from where now we can go ahead and [05:27:43] type directly that okay go to employee info and this time let me type right info and this time let me type right join here right joinment with what we have employee salary right here but now this time instead of typing using here [05:27:58] we have one more option if the names are not exactly same. Okay. What if it is employee ID and maybe employee ID space is there. If there is any kind of discrepancy or the change maybe it is writing employee number and another [05:28:12] table it is writing employee ID. Right? It's still they both same but the names are different. In that case here we use another keyword font. In this on here we can now define that go to employee info. Inside employee info, you're going to [05:28:28] find a column called as employee ID which is exactly equals to the employee which is exactly equals to the employee salary table which has a column called as employee ID. So we use on here right? So prefer the [05:28:44] prefer uh preparable method is always on. Why? Because we have no idea that uh whether it is always going to be same or not. Okay. So preferred method of not. Okay. So preferred method of defining a common column is. So if I go [05:28:58] also absolutely correct. And when we execute this, look at the right join the and uh the output is four rows because the right side table has four rows here and see we have got the entire employee uh from the uh different side here. We [05:29:14] have got only two matching rows right here. All right. So this is how we can go ahead and type left and right join. You can see the difference. We have to simply go ahead instead of left join we are simply typing right here. Let me go [05:29:27] just to show you how it is going to look like and right here. Okay. Go ahead and find out left and right join. This is how we type join. Take your time and see both [05:29:42] the joints right here one by one. First we uh we are typing the keyword using to define the common column and then we are typing on. Great. So see right now, okay, we have seen uh left join and the right joint. Easy way to type it out [05:29:55] here. Now here after this right join here, let's go ahead with the inner joint. Let's go ahead with the inner joint. Now there is one more way to type. So before I go ahead and show you here, let's see [05:30:09] again we go ahead with select. We say everything here and from in the from here we want to do the inner join here. So if I go ahead and get the employee info here and we want to do the inner join. So we type inner join here. Type [05:30:25] join. So we type inner join here. Type inner join here with our employee s. Now here I'm going to show you two two three possibilities here. If I go ahead and type using because we have the exact same column name here. Okay. This is the [05:30:40] inner join output that we see right here. We have employee ID, name, a skill set, experience. And from the second table, we are only getting designation and salary right here. Okay. What is the other way here? Other way here is this [05:30:54] will remain exactly similar. And now we go ahead and we type on. Now in the on here the again one uh major problem is we have to go ahead and type the entire thing, right? Employee info equals to employee ID, employee employee salary [05:31:09] dot employee ID. So we are going ahead and typing this multiple times the table name. So what we can do when we don't want to type table name multiple times here we go ahead and we give alias to table name. [05:31:24] We go ahead and provide alias here to table names. We'll simply say that see this is employee info table right I'm going to call this as t1 from now on and I'm going to call it employee salary as t2. So when I go ahead and type on here [05:31:40] I can write T1 dot and from T1 that is we are saying employee info here get the employee ID which is going to be equals to the table to employee ID. to the table to employee ID. Okay. And now if I go ahead here and [05:31:55] execute this right there I'll get this answer right there. So when I type on here observe that I have the exact same output. There is only one difference. output. There is only one difference. Can anyone notice that difference here? [05:32:14] easier to define on and the common columns. It has got no job from the output. So I would like you to go ahead and see the inner joint right now. Go ahead and see the inner joint here. Okay. And tell me the difference between [05:32:27] Okay. And tell me the difference between the two outputs. Same inner joint output but go ahead and tell me the difference. At first we are typing using to define the common uh column and second we are defi using on here to define the common [05:32:40] column. Go ahead and get it. Go ahead solve this and tell me do you see any difference between the output of using and output of [05:32:54] these two? And look at the output when we are executing with the using here. Since using assume that we uh both the column both the tables here have one single column name here it will keep employee [05:33:10] ID only once. It will keep employee ID only once. However in real time that's not the case here. So when we are going ahead and and executing here with on [05:33:22] right now okay we will go ahead and see that employee ID here is added twice one from the table number one from the table number two even though they have the number two even though they have the exact same uh data set inside it okay [05:33:36] but since we typing on here with the pre-assemption that the both names are different these will be added twice that is the difference here the preferred is on because in uh uh real time practices that's what we use and it is easier to [05:33:51] keep track. So this is how we type the alias and this is how we use uh this is what the difference between using and on and yes this is how we type alias and we use alias right here. It is easier to go ahead and define the two separate uh it [05:34:08] is easier to define the common columns with the help of the alas right here. here. What is inner join? Everyone have you observed something here in the inner [05:34:21] join right now please pay attention here in the inner join here one very distinct option is here that the employee ID that are present in the first table [music] that are going to be exactly equals to the employee ID present in the second [05:34:36] table correct this is what inner join is out of these two here this uh values in the employee ID one should be exactly equals to employee ID present in the second table. That's what inner join is. [05:34:51] Because of this uh unique quality here, we can actually type the inner join without the keyword inner join. And how do we do that? How we can write we can create a inner joint merge table without the keyword inner join here? We'll go [05:35:06] ahead and type the wear clause. We'll go ahead and type the wear clause. We use the wear clause there. So let's let me show you how to type it uh there. So this will exactly remain similar. Let's write everything from [05:35:19] employee info and after that we type comma here and we say employee salary. So we need uh the data from both of these table there. Now we go ahead and type the wear clause and we'll say that where the table one employee id is [05:35:34] exactly equals to table to employee ID. So without even typing here without even typing the inner join okay just by typing the comma here we will still get the output of inner join. See exact same. So most of the time whenever you [05:35:50] will see inner join written there it will be written here not with the keyword uh here but they will be using the wear clause here. Why? Because this where clause will act as a simple filter and it will be quite more quicker in a [05:36:07] larger table as opposed to inner join right here. So whenever we are typing professionally they will be using the where clause to define inner join and remember that this can be done only with the inner join and not with the left and [05:36:22] right for left and right we have to type the keywords write down what do you mean can we write from t1 comma t2 these are aliases aliases right so in this line we are actually [05:36:36] defining that these are aliases so that we can use them afterwards here. So this was very simple left, right and error join everyone. Okay, let's go ahead and learn about full auto join here. About full auto join as I've already told you [05:36:49] there is no keyword for this. All right, so what we do here is we go ahead and use an operator. Which operator do we use here? We use the operator union. We use the operator union. What does this operator do? [05:37:05] This operator will go ahead and copy paste the table one below the other. So basically this action is called as append action. What is append action here? It is simply going to go ahead and copy two tables one below the other. Let [05:37:18] me give you an example here. Let's say uh every month you have been given the monthly sales data to you okay for the analysis purposes. So uh once you get the data for one month let's say you got it for January then you got it for [05:37:32] February then for March now they're asking at the at the end of the quarter they're asking that okay now can you give me the quarter wise analysis. So in this case here you have got three separate tables. So how will you go [05:37:45] ahead and join all the three tables together? They have exact same table structure. You're getting that data every month consistently. What you will do in that case? So if these are the three data set here and you're getting [05:37:57] it one for January, one for February here, how do you go ahead and keep them here, how do you go ahead and keep them together in one single page? [05:38:17] example, if these are three Excel sheets you have one for January, February and March and now they are asking you that no go ahead and give them me analysis by combining all the three files here. How will you combine them as one? [05:38:33] Yes. How do we merge it? We merge it like this one below the other. So basically we're copying pasting them one below the other making sure that we have exact same structure of the table. Okay. So this here this here is called as [05:38:50] append action. Now this append action we can do here with the keyword union. Right? So as we have the keyword union here we have one more operator called as [05:39:02] union on. So we have got two operators. One is union one is union on. What is union here? Union here when it goes ahead and copy paste two tables together ahead and copy paste two tables together here it will make sure that there are uh [05:39:16] duplicate rows. It will remove the duplicate rows if there are any. After merge what will union all will do? Union all will make sure that all the rows are still there. Okay. So how do we create the full order join? With the help of [05:39:31] union here because we don't want the duplicate rows there. So basically what is full order join? What is the what was the definition of full order join? We simply wanted to go ahead and get all the rows from both the tables right if [05:39:45] you want all the rows from both the tables here. Meaning we have to go ahead and combine the left join and right join. So whatever is the output from the left join will go ahead and we append it with the output of the right join. So [05:40:00] let's see how we do it. How do we do that? So this is our right join here, right? So I'm keeping it right there. This is our right join and I will convert this into left join. So if it is left join, this is how we [05:40:15] see the output. Employee ID, name, and skill set. And see, we have got lot of null values here. Now if we have the right join here, look at this right join output this one. [05:40:30] here we or the left hand side we have got the null values. So we'll simply keep them one below the other. To keep them one below the other first thing we do is we get rid of the first semicolon here because now this entire thing has [05:40:44] to be one single statement and we go ahead and write here post union. I'm going to go ahead and type union post here. So if I go ahead and type union this entire thing will become one single statement. And look at the output. If [05:40:58] you look at the output here, this is the output from the left joint. This is the output from the right joint. This output is from the right joint and the upper one is from the left joint. And it is simply written one below the other. And [05:41:12] now we have the proper entire full order join in front of us. That's why union is written. We have seven rows in the output. Okay. But now if I go ahead and type union all which will keep the duplicates here. If we go ahead and type [05:41:25] union all here means keep meaning keep all the rows there. The output has nine rows here. Why this output has nine rows here? Reason is when we are doing right join and left join. We have two common rows. Remember those two common rows are [05:41:41] repeating here. So see here 1 2 3 is a common row. 1 2 6 is a common row. It is repeating here. It is repeating here from the right side. So union is Union all is not able to take care of this repetition. That is why in full [05:41:56] orderment we will take care of union and if we are merging or appending data from multiple timelines or time periods we'll use okay go ahead and observe the difference between the two and this is how we go ahead and write order join. So [05:42:10] we want to go ahead and see the customer numbers and name of all customers. What do we want to see? We want to go ahead and see customer numbers and name of all and see customer numbers and name of all customers along with their order ids [05:42:25] along with all the orders they have placed so far in the year 2005. In the year 2005 a very simple question, right? [05:42:37] A very simple question here that we want to see the customer numbers and their meaning they should have placed the orders in the year 2005. So first let's break it down. Okay, let's break it down here. Please tell me [05:42:52] please tell me which tables do we use from classic models to get these details. So customers table can give us customer number and orders table here can give us the order details. The order numbers are [05:43:07] here. That's orders here. Now which one is the common column between the two? What is the common column? Which one is the common column between the two? ID, order ID or customer ID? So what which one is the common column between [05:43:21] there is a customer number or customer ID right there. Now here which type of join we should do here? Which type of join we should do here? Left, right or inner. How do we decide that? We decide that in line with the objective that we [05:43:37] are right now looking for customer numbers or customer details of those customers who have actually given the order so far in a particular year. So [05:43:49] what which rows are we talking about? Are we talking about all the customers and only uh and fetch only their order uh only the matching customers order ids or are we looking for the common rows out there that if the customer has [05:44:05] placed the order then only we need the detail or we need all the customer has to be there and if the order is placed we'll get only the related orders. What customer's table, we'll have all the customers that are currently registered [05:44:19] with us. But have they given order in 2005? Is that a guarantee? So do we want all the customers to be present in the output? So in the this scenario here, we can go ahead with inner join. Why inner join? Because I want the customers who [05:44:34] have placed the order so far. Maybe some customers registered with us but they haven't placed any order yet. And if I do the left join, they will still be there. All right? So that is why we'll go ahead with inner join here because we [05:44:48] want only the customers who have placed the order so far. So you go with the inner join till here we are good right. So uh let's go ahead and start typing here. So I'm typing here select as usual first I'm typing uh everything for now. [05:45:03] Let's figure out from first and we will go back to that later. Now in the from here I'm getting customers table. I'm going to name that as C. We are going to inner join it. We are going to inner join it. And we will inner join it with [05:45:17] the orders table right here. And I'm going to we are going to name orders here as O. Even if I don't write as there and write directly CN O it will still get it. But uh I will still type it here just for the clarification. Now [05:45:33] when we type on here I we can use the sales right there. We can say that go to the customers here. Right? That is we are typing SC get the customer number here which is going to be exactly equals to what you [05:45:47] are going to see in the orders table. Customer number right here. Now we don't want the entire table. Do we want the entire table connected like this here? No. We just want a few select columns from here. Okay. Now I would like you to [05:46:03] pay attention on few things here. First here is do you see we have a customer number here this is the merge table everyone right do you see this is the customer details right there when I am scrolling towards right here [05:46:17] right here towards right after credit limit after credit limit we have start with the order number this is the orders table now if I move more towards right the last column is also customer number yes meaning in the output here we have [05:46:33] got two columns with exact name that is customer number. Done. Do we understand this part? Yes or no? That yes, we have got two separate columns and they both are named exactly similar customer number and they both are coming from two [05:46:48] different tables. Now so this is why this is why when we ask you that see I don't want all the columns here you go to the customers table. You go to the customers table there and from the customer table you get me the customer [05:47:02] number. Now here we need customer name right but customer name is not ambiguous it is the exact one single name here we can type it directly that okay get me customer name what we want next here they uh we [05:47:17] have we need order id so order ID is also singular it appears only once so this is order number right there after this here they are asking us for the year 2005 right so let's go ahead and get order date that's what they're [05:47:30] looking for date right here so we need only four columns. Since it was the common column here, we have to define from which table do you want this? Otherwise, it will give us the error. Now, once you have this here, all right, [05:47:44] Now, once you have this here, all right, are all dates are from 2005? are all dates are from 2005? Are all dates are from 2005 here? [05:48:00] So, how do we go ahead and filter out 2005? How do we apply the filter? Select 2005? How do we apply the filter? Select from where? We apply the filter with the where clause everyone. So select from and where. Now inside where what is the [05:48:13] filter that the year should be 2005. Do we have a year column here? No, we don't have a year column separately. But we can go ahead and extract the year as we have done before from the order date. Yes, absolutely correct. And we can say [05:48:29] whatever year you extract from the order date here it should be equals to 2005. And now when we execute this right here we get this. we get this. Now dates are already from 2005. [05:48:45] now so that it looks clean, cleaner and visible. Go ahead and check this out. Please remember that whatever problem you have, you have to simply go ahead you have, you have to simply go ahead and break it down. Uh remember that we [05:48:58] do have keywords right we we have keyword called as cross join and join and natural join too. So we have got these keywords there and then there is a self join. This is only a concept. First let's talk about the keyword cross join [05:49:11] here. What is a cross join everyone? Cross join has no common column concentrations. It is a simple cartesian product. It is a simple cartisian product. Those who are from the mathematics background they might [05:49:24] remember this. All right. Those who are not there are like me don't worry about it at all. Let's understand what cartisian product is. So for example here okay here are few numbers. Okay this is our column number one and this [05:49:39] here is the column number two. So here we have got few more numbers right here. So let me write some different numbers here. Okay. So these are the two columns that we have here. This is first column here and this is second column. Now what [05:49:54] we are looking for here we are saying that we are trying to understand cartes and join here. What is a cartisian join here that in the output in the output here I want to merge these tables together. However since there is no [05:50:08] concept of common column here what it does is this one will get merged with does is this one will get merged with four with five and six. So if I'm going ahead I'm typing one here in the output in front of the one here all the three [05:50:25] repeated this is going to be the output that is cartis then we have got two here right so this two here will get multiplied to so this two here will get multiplied to all these three numbers right here again [05:50:39] all these three numbers right here again here and same happens with three here okay the same happens with three here or three will also go ahead and get multiplied to all the J values right here. [05:50:57] Now it actually doesn't make sense when you talk about numbers it's fine. Okay, when we talk about only numbers it's fine but okay one one is getting multiplied by these four numbers here and this is called as cartisian product. [05:51:10] got two separate data set and we are we are merging them together without any uh consideration of the common problem. So let me give you another example here. [05:51:22] let me give you another example here. Let's say we work in FMCG sector. I hope you all understand FMCG there. All right. And we have got uh different product mix out there. So this is uh my products and this here the flavors that [05:51:36] we will provide. Okay. I don't know what to call them flavors or something whatever you want to call it. So let's say this is a shampoo. This is we want to create a product mix for shampoo based on flavors. We have got hand [05:51:48] washes there and soaps out there. And we want to have we have three flavors. We have figured out we have got one flavor here. We have got one flavor here. We have got one flavor here. And generally this is what happens. Right? So we have [05:52:04] figured out that these are the products we are going to offer. And uh we have got these three flavors. And based on these three flavors here we are going to create the entire product line for these. Now the cartisian product or the [05:52:19] will go ahead and give us the output. What will be the output here? It will go ahead and get the shampoo here. And this shampoo should have all the three flavors right here. And this shampoo is going to get repeated of course. Now [05:52:33] this is the hand wash here. we will get the hand wash here. Since we have merged it with this here, I will go ahead and merge it with all the three values right merge it with all the three values right there. Same happen with soap seal [05:52:50] output right now in this output here everyone this output now contains the entire product mix that we were looking for because of the cross join and there is absolutely no consideration of common column. it was not required. Right? So [05:53:06] when we are talking these these kind of mergers here, okay, this is where the cross joint comes in and this is called as cross joint. So let's take a quick as cross joint. So let's take a quick example here. And uh we have all been uh [05:53:20] we have all been to cafes. Yes. And when you go to cafes everyone they have combo you go to cafes everyone they have combo offers. Yes. So let's uh take an offers. Yes. So let's uh take an instance that uh right now our cafe has [05:53:35] come to us and they have opened newly. So they want us to go ahead and create a combination menu for us combo menu for them. So they have beverages. They have got food. So they want to go ahead and create multiple combination of food and [05:53:50] beverages and they want us to find out what will be the prices and what are the we'll go ahead and create that combo menu there and plus of course we will go ahead and figure out what is their total price that they should be offering [05:54:04] there. So will figure out the multiple combos they can offer and of course the total price they can charge it for. Okay. So this is what we're going to see. This is an example here. So first here let's understand how to type a [05:54:18] here let's understand how to type a cross joint. Okay. So let's go ahead and first understand this. What is a cross joint? sample cardium joint first decent product there. Basically what we are looking for we are looking for multiple [05:54:30] possible combination between the two tables and of course we will not go ahead and consider any common column right there. Now there are two ways to type it. Okay there are two ways to type it. First way here is to use the [05:54:46] keyword. Okay, first way here is to use the keyword and since we do not have an any other table here, we will go ahead and make sure that we're using DB joints this time. Remember that we have to go ahead and set the default back as DB [05:55:00] joints. Please do that. Now here we will uh type select again. In the select here we are getting everything from all the columns from both the tables here that columns from both the tables here that is employee info. I'm calling this as T1 [05:55:14] is employee info. I'm calling this as T1 for now. and we are going to cross join it because we have the keyword available with employee salary here. I'm calling it T2. So there is no common column concentration we are we don't have to [05:55:27] type anything else here because when we go ahead and press uh and execute this go ahead and press uh and execute this here look at this it makes no sense for here look at this it makes no sense for now but we can see here that here this 1 [05:55:40] to three is getting repeated four times uh and this is also four times getting repeated here and this is true for each and every employee ID. What is the other way to type it? What is the second way here? In the second way here we write a [05:55:55] simple query. We will not type the keyword at all. So if I don't type the keyword at all here what what we do we type here we say select everything from [05:56:07] type here we say select everything from from where from employee info employee salary and we end it here. We end it here. And once we execute this, end it here. And once we execute this, this is what we see. Exact same output. [05:56:22] this is what we see. Exact same output. Okay. So we can type it without value two. Give a two. Right. Go ahead and find out the cross join here. Very simple thing here. And then we will create a small two tables. Once we'll [05:56:35] come back. First we create these small two tables there. Okay. Then we'll move forward and create a cross join and create combo offers for the cafe there. So let's uh create the database here. I'm going to call this database as cross [05:56:48] table because that what that's what we are going to do here. We're going to use the cross join right now. And inside this we are going to create table. What is the first table we are going to create? Inside the cross table here [05:57:01] pay attention here. We are first going to create food table. Here inside the to create food table. Here inside the food table we are going to keep item code, item price. right here. We'll go ahead and keep item four, item name, and [05:57:15] item price right there. Now, we insert the values into it. So, we can say insert into where insert into [05:57:32] cross table food. Now, we need at least three food items here. So, what would you like to eat? We very close to the break right now, everyone. Let me tell me what do you what would you like to eat? So this is I I'm typing item code [05:57:44] is 1 2 3 here. What would you like to eat? The first thing that comes into my mind is pasta. And I'm going to go ahead and give some random to eat? What is the next thing that comes up in your mind? All right. So let [05:57:58] me go ahead and give another food item right here. And uh here we go. One more. right here. And uh here we go. One more. One more. Easy to type food item. Easy to type. Easy to eat food item. Everyone tell me one more here. Maggie. Okay, I [05:58:13] saw Maggie post. So, let's keep the Maggie right here. And let me give it a random pricing again. These are the food items. All right, this is our food table right there. I will select this entire thing and execute it right here. Refresh [05:58:27] it. And here we have the cross table right here. After food here, we need beverages table everyone. Right. So, we I'm going to create beverage table also here. Now cost table dot beverages. [05:58:41] you like to drink? We will keep three things here. Okay. And beverages also we'll keep the three columns here. Beverage code, beverage name and beverage prices. Now inside this we'll go ahead insert [05:58:56] the values again. So which values do we want to insert here in the cross table beverages? And we want values right here. That's values. Now first one here is the code. So let's see code is V12 here and yes what would [05:59:12] you like to eat here? Sorry drink here. First thing that comes into my mind is tea. What would you like? You have got two options left everyone. What would you like to drink? Second I'm keeping let's say B13 [05:59:28] let's say B13 connect this coffee. Okay. Uh so we will be uh you'll have the coffee right here. Very good. [05:59:40] What's next? What else would you like to drink? We need one more drink everyone. So B4 I'm leaving it B14 here. Ah very good. Yes. So we'll go ahead with live soda right here. And this is a [05:59:58] random pricing again. And here we go. We have two tables everyone. So I will go ahead and select this all together. Execute it only once right here. And we refresh it here and see we have two tables. One is the beverages table right [06:00:13] here. And second is the food table right here. Okay. I will go ahead and share this with you right now. And uh during the break simply uh get these codes there and execute them. Select them together. Execute them [06:00:28] Select them together. Execute them together only once and refresh it. Okay. beverages. Okay. We'll make sure that we are typing here use cross table. So that will make sure it is set as default. Okay. Now let's go let's go ahead and [06:00:44] cartisian product the cross table here. So we can write here that we would like to select. Of course we are looking to select all the columns there and from where from both the tables here. So say get the from the food here we are [06:01:00] calling it T1 and we are going to cross join it with beverages here and we are calling it T2 right here. So what we see here right now is just the list here but we have to create the combination here. We [06:01:14] need a combo here. So the combo is in front of us everyone. All right this is the combo that we are looking at. So uh one item here okay is combined with all the three beverages right here. Okay. So again see here this is here it is [06:01:29] combined with the beverages right here. So this is also combined with here. This is what we are looking for. So we have got multiple combinations here. However we still have their individual prices. What we want to add? We need to add a [06:01:41] total price and then the discounted price of the combination if the combination is spot. So first let's go ahead and now we'll add two columns here. All right, we are calling it total price and the combo price. We'll add two [06:01:55] columns in front of it. So let's go ahead and see how we are going to type that here. I'm going to take the same thing here. Select everything from here and copy this and paste it here and type I'm going to make [06:02:10] write from in the next line here. And after all the columns we want to add two more columns. So after the asterisk here we'll go ahead and type a comma and we add a column. First column is very simple. We'll ask it that go table [06:02:23] number one that is the food table there and from the food table get the item and from the food table get the item price and add that with the table to beverage prices there. We can keep it under [06:02:36] the parenthesis here and we can name this as total price. We can name this this as total price. We can name this here as total price. [06:02:51] usually give the discounts for the combo prices. So for the combo price here we have to get the entire thing here. So let's say if we are giving the 10% discount. Let's say we are giving the 10% discount for the combo price here. [06:03:06] Meaning we are charging them only 90% of the total price. So go ahead and we will the total price. So go ahead and we will type here 0.9 right here. So this is just a 90% of the total price. We cannot simply use the total price here one [06:03:20] because select query will be executed at the end and at the end these calculations will be done uh one after another. So it doesn't understand total price as a column right now. So we'll go ahead and type 0.9 here. I'm going to [06:03:33] call this as combo price right now. This is combo pricing. this has got too many decimal points. Okay, let's round it off here. [06:03:46] Currently, I'm going to round it off to no decimal point. [06:04:00] And here we have total price and combo price right here. See? Okay, I'm going to go ahead and verify this so that we can see both the options [06:04:12] the name here so that we can utilize these names inside the calculation. What is self join everyone? Self join is not a keyword. Self join is not a keyword. Okay. And uh let's understand it [06:04:27] clearly. Self join is very different from any other join we have seen so far. from any other join we have seen so far. Self join is done on one single table. It is not done on two tables merging together. We will go ahead and we'll do [06:04:41] the self join in one single table based on columns within the same table. Based on columns within the same table. Why do we use the self join here? Whenever we [06:04:53] want to go ahead and create a hierarchy within a table itself. So self join here is a special type of join. It is commonly used to create hierarchies. It makes us easier to retrieve the interconnected data within the same [06:05:08] table. And remember that there is no specific keyword called as join. Okay, let's understand it better. To understand it better here, let me [06:05:20] show you here the employees table. Okay, so let me go ahead and show you the employees table we have in classic models. Right. This is the employees table everyone. Okay. In this employees table here, [06:05:35] Okay. In this employees table here, do we have a column which has almost do we have a column which has almost common data set inside it? [06:05:55] the employees correct and this is another column that says reports to. So basically what is it here is these are employees and these are the managers or anyone whom they are reporting it. Okay. So this is our management here. This is [06:06:11] our management here. Okay. Where these employees are reporting it. Now let's understand how this table is uh created. To understand how this table is created here, see very carefully. This is employee number 10002. Right? Who is [06:06:28] this employees employee here? Let's figure it out. So this employee 22 here. Who is this person? Is this person Dian Murphy? Yes, that's the name here. This person Dian Murphy has the employee ID of 02 and this person is president. [06:06:45] of 02 and this person is president. That's why uh Diane is not uh reporting to anyone. Let's talk about 1056. Mary Patterson Let's talk about 1056. Mary Patterson here. Mary here is reporting to 02. Who [06:06:59] here. Mary here is reporting to 02. Who is 02? Dying. And what is the designation of 1056 Mary here? The designation of Mary is PB sales. But she Mary here is reporting to president. quite confusing to understand especially [06:07:14] quite confusing to understand especially the job title column. Yes, because if we the job title column. Yes, because if we see 1088 William Patterson here, William see 1088 William Patterson here, William is one reporting to 1056 that is uh [06:07:26] William is reporting to Mary and is 1056 sales manager. No, no, no. William is sales manager. So here everything is written in one single line. However, will it be easier to read if we will uh go ahead and [06:07:42] reconstruct this table something like this? Look at very carefully here. Will it be easier if I go ahead and type manager IDs first? In front of manager ID, we will have manager name and then we will have the manager job titles. [06:07:59] Manager job titles here. After this year, after this year, now we can go ahead and get the employee ids and employee names employee names and their uh job details. [06:08:22] this be easier to comprehend and analyze? Right? So, this is what self join does. If we go ahead and use the self join on the same table right this self join on the same table right this particular self join will help us to [06:08:37] restructure the table so that we can see the hierarchy properly. Okay. If I have product ID uh product uh brand details product details like that this is also a hierarchy. So product category product subcategory product brand product colors [06:08:51] product sizes this is all all is hierarchy. So if you want to see a proper hierarchical table okay this is not how the tables are actually uh collected the data is collected. So we restructure it by using self join. So [06:09:04] this is what we are looking for. Okay. Now how do we restructure it? So to type the self join here everyone this is how we go ahead with it. Now remember that uh how do we type the join here? Let me show you uh here. How do we type the [06:09:19] show you uh here. How do we type the join? Let's take this right here. to type join here we will use inner join. We will go ahead and use the inner [06:09:32] join. We will go ahead and use the inner join. Now we are about to the inner join on one single table. Right? So how do we mention uh only one table inside the selected statement. So we'll go ahead with start with the select everything [06:09:46] get all the columns. We can choose the columns later. And how do we define the uh join or the merge there? We'll start with simple prom and we'll say that go to employee table and we name the employee table E1 and then we will [06:10:02] define the inner joint inner joint and after this here we will go ahead and get write the employee table again but we give the alias as an E2. So now it will treat the same table as two separate tables. And of course we go ahead and we [06:10:18] define the common column. Now the common column here is going to be our two separate columns. One is employee ID, another is manager ID. We'll say that we this is the same table. Treat them as two. And based on these common columns, [06:10:31] you go ahead and merge them together. That's how we uh that's how we go ahead That's how we uh that's how we go ahead and get the self joining them. Okay. So stay here. Okay, I going to show you. I'm going to write this here uh uh [06:10:45] inside the classic models. Okay, so here is the classic models everyone. Make sure it is report and then I'm going ahead uh with the select [06:10:59] currently I'm typing select every select everything and then from from where from the employees table right I will call this employees table E1 and we want to go ahead and inner join it inner join it with again the [06:11:14] employees table but this time we give the the name here as E2 when we are defining the common column here we'll say that go to E1 go to E1 and first you'll ask it that which particular column is similar [06:11:29] that which particular column is similar here employee number okay and this is equals to E2 dot reports to this is our name here these are the two which are the common columns here now let's look it [06:11:46] very carefully to in the output let's look at very carefully in the output Here remember that this is the same table right this is the exact same table we will look at the output right now let me give you a better view here we go [06:12:04] let's look at the joint output uh here see here we have got employee number last name first name observe here that this first column here contains employee [06:12:16] this first column here contains employee number of whose everyone right if you will see this Murphy Mary here these both are the per [06:12:31] these both were the managers even if you see the titles right now here I would like you to extend uh your view I would like you to extend your view till the job titles look at the job titles okay all these people are this is for Murphy [06:12:48] who is president Mary is VP sales Everyone else is a sales manager. If we go here, no one is below than sales manager other than this one. All are here meaning someone is reporting to them. So the first part that we see [06:13:03] here, it is the manager part. And when we move towards the right here, we again have the employee number, first name and last name here. But this time when you look here, all these people are reporting to someone. Mary is reporting [06:13:15] to the president here. Uh Jeff is reporting on William is reporting to Mary back here. So we have all employees staff here. We have got [06:13:27] the staff right here. So Mary is reporting to the to the president. Yes. Jeff is reporting to the president. William is reporting to the VP sales William is reporting to the VP sales right now. And who is the VP sales? Mar. [06:13:42] So right now in this part here everyone the first first part here uh the manager's part this is the manager ID manager name manager first name and manager's job title right here in the second join table here these are the [06:13:57] people who are the employees reporting persons here and this is their job title right here so now we can go ahead and pick what we want easily so I'm going to copy and [06:14:10] paste here and we are going to pick up the column col right here. Now, which columns are we looking forward to? First, we will need this employee number. Remember that each of these names are repeated up. So, we have to go [06:14:22] ahead and say that okay, go ahead to employee one here, E1 here because it is employee one here, E1 here because it is on the left hand side. And on the left hand side. And get the employee number right here. [06:14:35] And this is our manager ID. This is our manager. right now. You can concat them together too. So I'm saying that go to E1 and get [06:14:50] the first name and this is going to be manager name here. This is our manager name right here. Comma. After this here we need job title right. So we'll go to E1 dot here. We get the job title two from E1 there. And this is the manager [06:15:07] titles, right? These are the manager titles, right? Let me show you the output right now. How clean the output is going to look here. So, let me beautify this easy here. Okay. And let me show you how the output [06:15:21] is going to look like. See, right now what we have here, we See, right now what we have here, we have got manager here and their names and their manager titles title. Now we can go ahead and choose again. [06:15:36] We'll go ahead and we choose again. So now once we have this we will go ahead and choose from the second part of the employees table. Now here we can move forward that okay now you go to E2 there. From the E2 also get the employee [06:15:49] number but this time these are going to be as employee ids be as employee ids and from E2 again we get the first names there and these first names are going to be employee names right here. employee [06:16:02] is right there from E2. Once we get the job title there, this job title is going to be as employees job title. Employee titles [06:16:16] and once we see it right there say so this is not easy. Now we can see right there that uh here okay to the president two people are okay to the president two people are reporting and to VP there to VP sales [06:16:30] there are three people reporting to Anthony who is a sales manager and maybe not anywhere [clears throat] these many people are these many people are reporting out. So now this is our joined out table. We can go ahead and do more [06:16:45] calculations right but this is how the self join works. Go ahead and check it out. First join everything together. Okay. After joining everything together, Okay. After joining everything together, then go back and uh pick out the [06:16:59] comments. Okay. So let's do one thing here. The Chrome has got unresponsive for me. So I'm going to share it right there. Okay. So this is the self join right here. I'm going to share it in the parts. [06:17:14] parts. First we will get everything. Okay. Once we understand the output from there we'll go ahead and pick up individual column right there and why inner join [06:17:26] it closely all right it is simply going ahead and getting all the matching values in front of one another uh next is this exercise right here first here we simply want to go ahead and calculate [06:17:42] we simply want to go ahead and calculate the total sales amount for each year and quarter How we can do that? How many tables we need here? Let's break it down. It's a very very simple question here that [06:17:54] calculate the total sales amount for each year and quarter. Let's figure it each year and quarter. Let's figure it out from here. [06:18:07] columns do we need here in the output? What we are talking about? How many columns are we looking for? So if we are talking about select here right which columns do we want? We want year [06:18:20] and then we are looking for quarter and here it is saying give me total sales amount. Give me total sales amount. Okay. So please tell me from where we can get year and quarter for the uh orders here that when they have been [06:18:35] orders here that when they have been placed inside classic models only. Order details do not have date. Order details do have quantity ordered and [06:18:51] price. Which table has date everyone? Orders table. Remember the date functions right? So we need orders table and from where are we getting the total sales amount. [06:19:08] We have to go ahead and multiply quantity with price h that in individual order here how much quantity has been ordered and what was the price paid for So we need all the details table everyone. So please tell me is there a [06:19:23] can figure out each year how much has been paid for the orders. Do we have a common column? Common column we have here. Yes. [06:19:35] Order number. Very good. What will be the calculation for total sales year? Remember that this is how the order details table looks like. Look at the order details table. Right now order number is getting repeated. Why? [06:19:49] Because inside this order these many different product has been ordered out. This is the quantity of individual product and this is the price paid for each item. Right? Very good. So we need to go ahead and multiply [06:20:04] quantity order with the price. Once we will multiply this whatever answer we get after multiplication of these two here we need to add it up for individual order and then for individual year. So first what we do? We go ahead and we [06:20:20] join them together. Okay? Right? So we need to go ahead and multiply quantity need to go ahead and multiply quantity ordered with price each. And we need to aggregate it too. Okay? Because we want total sales not row wise out. So we [06:20:34] don't want to add a calculated column. We want to add it up. So we go ahead and type sum in front of it. Okay? So this is how we get the sum. So from and is how we get the sum. So from and select is defined. Okay. Let's go ahead [06:20:47] and type it out. So how do we go ahead and type this out here? First here always look at the entire table if we have the excess row. So we will say have the excess row. So we will say select everything from where? So from uh [06:20:59] we have got orders table first. I'm going to name orders table oh and which join we should go ahead with. Now here we are not sure if I say inner join uh we might compromise the data set. What if uh we haven't received anything yet? [06:21:15] Maybe that order is canceled out the status is something else. So uh whenever you are in doubt you're not sure about how the data set is or how the how the data model is created at the back end we are not sure about that about the table [06:21:30] structure we can simply go ahead and type join just join and we can ask it to go ahead and join it with the all the details here and we type OD we type OD right there okay so after we write this join here we have to again define the [06:21:47] common column here so we can go ahead and say on Here from the orders table we know the common column that we have here is order number which is of course going to be equals to order details table order number till here everything is [06:22:00] fine. Let me uh show you the entire table. See here this is the order number. This is the order date. Everyone in front of the order date here we have individual price and quantity right here. [06:22:14] What we want here? We don't want everything out here. We are simply looking for year quarter and total sales. So now we will need to go ahead and get the year out of this year quarter out of this year and then we [06:22:28] aggregate the each pro quantity ordered and price each as per that year and quarter right there. Yes, I'm answering that there. So uh see here how many uh total rows are in the orders everyone. Total rows in the orders table itself [06:22:46] Total rows in the orders table itself we have 326. Okay, in order details we have again 326 rows. So let's see here order details has 3,000 rows here. Okay. So when we are simply typing the join here, when we are [06:23:03] simply typing the join here, how many rows do we have now? 296. Okay, what does this signify here? What type of join are we doing right now? when we go ahead and define join in my [06:23:17] SQL okay it will get only matching rows from both the tables so it will automatically define the inner join so whether we type join or inner join it is going to be exactly similar in message so both of them give you the exact same [06:23:31] so both of them give you the exact same part okay yes inner joint so right now we are simply going ahead and typing join here so one is inner join another is natural join another keyword is there natural join will figure out what is the [06:23:45] best joint to go with and there you will get the left. ahead and simply type join here. It will act as the inner joint for now. And now we go ahead and uh see here with the ear. So this is year. What do we want in [06:24:02] the year or a date and I'm calling this just year. We want quarter there. So this is quarter. This is it or a date. And I'm quarter. This is it or a date. And I'm going to call this as quarter. [06:24:17] Now we need total price from where do we get the total price here. We can simply go ahead and say that go to uh order details here. Get the quantity ordered multiply that with price each right here. And we can call this as [06:24:33] total sales. However, we have to aggregate it right as per each year and quarter. So we'll go ahead and sum it up and remember when we are aggregating something here select has to work with group by so that the [06:24:50] group by will go ahead and get the individual year unique year and unique quarters right there. So in group by here we'll type 1 comma 2. That's what here we'll type 1 comma 2. That's what we are looking for. And here we are. [06:25:02] We have got year we have got quarter right there and the total sales for for each year and quarter. And if you want to add the total and subtotal there, right? So you want to go ahead and add total and [06:25:17] sub total. How do we do that everyone? Within the same thing, we want to add uh grand total and subtotal. How do we do that? In the similar one here that at the end we should know uh for all the five years total and for each [06:25:32] year subtotal should be there too. Yes, we will get the exact same thing here, but we will use with roll up. With rollup is the entire keyword right here. [06:25:49] and sub totals right here. And no, we cannot replace null in my SQL is not in cannot replace null in my SQL is not in here. [06:26:01] retrieve the customer details right now. Name, id, country and we want to Name, id, country and we want to calculate average order amount. Average total order amount by each country. So [06:26:16] basically we are talking about. So this is what we want to retrieve. Okay. The purpose is to retrieve customer details and the average order customer details and the average order amount by country. So we want to [06:26:29] retrieve average order amount for each customer in each country. Each customer in each country. So what is this average order amount we are talking about? We talking about this only quantity order and price each. This is the total sales [06:26:44] uh there. But we want to calculate average of it this time. We want to go ahead and calculate average of this this time. That's the difference. Okay. And how does how what should the output contain here? Output should have first [06:26:58] your customer names and ids right. So customer name here, customer name here and country. This country right here and this is here we should have the average. This is where we should have the [06:27:13] average. Now but we want to see this report here only for the customers only include the customer details who have who are the high ticket customers for us. So we include the customers who have an [06:27:28] include the customers who have an average order greater than $3,000 who have the average order price greater than $3,000. than $3,000. Now let's figure out [06:27:42] Now let's figure out that which tables do we need? get customer name, country and average and average contains here quantity [06:27:57] orders and price. Please tell me the tables we are working with from where do we get see order details is very evident here because we are getting the quantity details here. Order [06:28:10] details is evident. What is the so this is our first here we figured out order details from where do we get the customer name and country everyone from customer name and country everyone from where do we get that [06:28:27] to be customers. Here we get customer name and country from there. And the details. Go ahead and check it out please. We need a common column to please. We need a common column to connect them. [06:28:44] Do we have customer number and order details? [06:28:58] confident in your answer. You can see that in right front of your eye. Okay. See here we have customer number, their address, credit limit, country. Do we have any of that here? Absolutely not. But we are sure here that we need to get [06:29:12] these three things out. It is a a very uh genuine request. So if we do not have the common column between these two tables there do we have any common table. So right now we have two tables one is customers right and another is [06:29:27] order details table and in both of the case here we do not have any common column between them. So if you don't have a common column here do we have uh here any common table? customer has customer ID [06:29:43] as uh the uh column here and this has the order id. So do we have a table which can connect both of these tables together? A third table. So we have a third table that is orders table everyone. Why [06:29:59] orders table here? Because orders table have both the uh both of them here. It has got customer ID also and order number also order ID and order ID too. [06:30:11] So what we have to do here is okay we will simply go ahead and table with the help of customer ID and we can order details with the order ID. [06:30:26] But when we will select the columns we will select the columns only from these two tables here. But we have to join all the three tables here. So writing this to write this query here, we have to go ahead and actually find a lot about the [06:30:40] data set just by scrolling up and down. Yes. So let's go ahead and see how to type it and what we can do to avoid it. type it here? So now we understand we need a third table the entire table here [06:30:57] that is orders. So we have got multiple joins right there. So let's see how do we go ahead and type multiple joins everyone. So to type multiple joins everyone. So to type multiple joins here. Okay for remember that we can join [06:31:09] one table at one time here. So we'll go ahead and join customer table and the orders table with the help of customer number. Then we will go ahead and join the output of this with the order details table with order number as the [06:31:24] common column because once it is join whatever big table is there that will contain the order number within it. Okay. I'm going to go ahead and type Okay. I'm going to go ahead and type select everyone. [06:31:40] the select here I will come back to it. First let's figure out from here. So inside the from here first we are connecting with or customers table this is customers table I'm going to call this as C and I'm going to join it [06:31:53] together. Okay let it be inner join for now and here we want to connect it with the orders table. This is our orders table and this is O here we want to join it on what? So we want to join it on customer [06:32:09] number. will ask it to go to customers table and get customer number which is going to be equals to orders table customer number right there till here everything is fine now what do we do next in the next here we will simply [06:32:25] go ahead and type join again and here we'll ask you to go ahead and get order details we'll name the order details as OD that join the order details OD based OD that join the order details OD based on what based on based on get the from [06:32:41] the orders table get the order number which is going to be equals to order details order number and this is our prompt. This is our prompt. Now all the three tables are joined together. See customer table right there. This is our [06:32:58] uh credit limit order number. This is order state here. And third here you will find is the price each quantity order order details table. Now all the order order details table. Now all the three tables are joined together. [06:33:10] Okay. And uh but we don't want everything of course. So we will go ahead and say that okay I'm looking for customer name here. So from the customers table we can say give me customer name and we want country right [06:33:24] customer name and we want country right there. Now we want the average. So we will go ahead and write the round function beforehand and the average. And we know we need to go ahead and simply get quantity order and price. [06:33:37] the two decimal points there and close the bracket. Right. Now let's call this the bracket. Right. Now let's call this as average. I'm calling this as average for now. Giving it a small name right there. So we have right now three things [06:33:54] around here. When we execute this here, is it going to work? No. Why? Because we doing? We're aggregating it out here. So we have to group it by. So we going to [06:34:06] go ahead and group by hit with one comma two. We have two things customer that's name and country. And here we are. Okay. We want to include the customers who have an average order amount greater [06:34:20] who have an average order amount greater than 3,000 only. So how do we go ahead and place a filter here? See we have average amount here and yes we have some above 3,000 some below 3,000 here. We have multiple type of amounts here. So [06:34:35] have multiple type of amounts here. So how do we go ahead and place a filter on this column right here? Where clause is used for giving the filter if the column is present in the database. So tell me is average column is present in the [06:34:48] database. Is it present in any of these tables here? Any of the columns of these tables here? The average no average is a aggregated column with [06:35:01] the help of profile. Correct? So if we're aggregating some column here with we're aggregating some column here with the help of row by and we're calculating it right here. How do we go ahead and give a filter here everyone? [06:35:14] With the help of having with the help of having here. Why? Because uh having [clears throat] can actually give the filter with any aggregate column which is created with the help of profile and which is not present already in the [06:35:28] database. So in having here we can say that okay the average here okay should be greater than 3,000 and now we have only 3,000 rows. We can [06:35:40] keep on going and uh give multiple other filters also there that you want to go filters also there that you want to go ahead that and uh the country should be equals to USA. So go ahead and write that country should be equals to USA. So [06:35:53] you can go ahead and keep on giving you can go ahead and use any any filter operator that we have seen so far and where clause everything can be used inside having two. Okay. When we will talk about the optimization here we will [06:36:09] learn something everyone that uh we are not supposed to give a filter which can be easily given with the help of where clause. So this country equals to USA. We could have given this with clause. We will not give it with having that is the [06:36:24] optimization but both are correct. What if we can go ahead and keep why are we even doing joints here? Why can't we simply keep all the columns at one place like this here? Wouldn't it be easier? No joints. Whatever you want, whatever [06:36:37] calculation you want, you can simply uh go ahead and extract column out of this. If the entire table is here, all the order details, customer details, product order details, customer details, product details, order details and date, status, [06:36:51] everything is here. Wouldn't this be easier? We don't care of the joints, easier? We don't care of the joints, common columns. Then why are we not doing this? Why companies are not doing this? Data will be huge. Yes. uh [06:37:05] degrading the performance means it will lag a lot and it is going to have too many null values and too many duplicate values so that it will uh it we cannot simply go ahead and ask it to go and count how many customers are there. Not [06:37:20] easy thing to do here because there are too many duplicates. Correct? It will have and it will scale so large that it will be too hard to handle it. You need uh to scale up your hardware constantly and uh you have to scale your software [06:37:33] too because you need to handle such a huge data and since it is just one single table all the updates are done in this everyone will be accessing this one single table for each and every purpose. every marketing department person and HR [06:37:48] uh simple order uh per an operations team who will go ahead and process the order and everyone everyone will be only talking about this table and uh there will be a lot of lack because they do this with the help of LAN or any [06:38:05] internet connectivity there. So this is quite a huge issue if you have one single table. What are the issues? uh what if I go ahead and define issues here first is too many duplicates because one person uh there are multiple [06:38:19] customers giving us multiple orders. So every time the entire customer detail is getting repeated. Now one order one product is bought by many customers. So the product will be uh will be there too and since we are maintaining only one [06:38:36] single table. So if I go ahead and some customer dregister themselves. So can we simply go ahead and delete that person's data from here? If someone dregisters themselves, can we simply go ahead and delete their data from here? No. We have [06:38:52] to go ahead and add one more column here and tell them whether they're is still active or not. Similarly, if we launch a new product. Similarly, if we launch a new product, of course, no one has given any kind of order of that because we [06:39:06] have just launched it on a date and I want to update it right here because it's a new product. I will go ahead and type that product detail only just this part. Everywhere else will be none. Everywhere else it will be none because [06:39:20] no one has ordered it yet. So here we will face multiple difficulties if we are trying to get the data here. What are those difficulties? False. These are called as anomalies. Here it is very difficult to insert new data. It is [06:39:35] difficult to delete anything out of here. And it is very difficult to update any new thing. If some customer has changed their number, their contact number or they've added new addresses inside it, it is very difficult to [06:39:50] update it. It will create too many null values right there and of course there are redundancy or repetition issues. Other are it will have large database memory one single database and it will cause a lot of lack. And because of this [06:40:05] reason what the companies do they go ahead they break up this table into the small parts here which can be handled independently and when required then we can join them together. And this process of decomposing or breaking up the table [06:40:20] into the smaller table, this process is called as nonline. Okay. And that brings seen that SQL is much more than a language for retrieving rows from a database. It connects raw operational data with analysis, reporting, [06:40:34] decisions. Whether you're preparing for a career in data analytics, business software development, understanding how SQL turns business questions into useful valuable skill. So if you have any doubts or queries, let us know in the [06:40:48] experts will be happy to help you as soon as possible. Until next time, thank soon as possible. Until next time, thank you and keep learning.