[00:50] YouTube-канал. Каждое второе предприятие генерировать данные. Клиент размещает оформляет заказ, кликает на объявление, завершает оплата, отмена подписки или получает доставку. Каждое действие создает еще одна запись в базе данных. Но [01:03] миллионы записей не делают этого автоматически создавать полезную информацию. настоящий в ответы. Какой продукт был произведен Наибольший доход? Какие клиенты Покупали неоднократно? Какой регион находится? Теряете продажи? Каков средний размер заказа? [01:16] ценить? И какая именно кампания привела к этому? покупки. Именно здесь SQL играет свою роль. главная роль. Даже с Python, ИИ и облачными технологиями. платформы, каналы передачи данных и передовые инструменты бизнес-аналитики Среди инструментов, быстро развивающихся, SQL остается одним из них. одной из наиболее широко используемых технологий в [01:29] экосистема данных. SQL не ограничивается и к традиционным базам данных. Современный такие платформы, как Google, BigQuery, Блоки данных Snowflake и DataB продолжают оставаться актуальными. Предоставлять аналитику на основе SQL. Итак, SQL — это не выживает просто потому, что он старый. [01:42] Оно выживает, потому что решает проблему. по-прежнему крайне важно задавать структурированные вопросы. В этом занятии мы будем следовать этому. путь от необработанных данных к практическим действиям и фильтрует данные, преобразует тысячи преобразует записи в значимые ключевые показатели эффективности, собирает [01:56] использование нескольких таблиц с помощью объединений и В конечном итоге, это используется для формирования панелей мониторинга и отчетов. аналитики и бизнес-решения. Итак, В итоге SQL будет восприниматься как нечто большее, чем просто... понять, почему оно остается одним из соединение языков современных данных [02:08] понять, почему SQL остается актуальным несмотря на рост ИИ, Python и облачных технологий вычислительные и NoSQL технологии. Хорошо Посмотрите, как организованы реляционные базы данных. оперативной информации в таблицы, строки, столбцы и взаимосвязи. Хорошо [02:21] Понять, как выбирать, где и заказывать. с помощью справки и списка найти полезную информацию обрабатывает пропущенные значения, условные операторы. Логические ошибки и изменения данных до проведения анализа. и сгруппировать по преобразованию подробно Преобразование транзакций в ключевые показатели эффективности бизнеса. [02:35] раскрывать полные бизнес-истории. Хорошо следовать процессу преобразования Вы также поймете, почему индексирование и Эффективность запросов имеет значение при работе с базами данных. расти. Мы рассмотрим, как SQL работает в облачной среде. склады, озерные хранилища, платформы бизнес-аналитики и [02:50] Аналитические рабочие процессы. Посмотрите, как работает SQL. в конечном итоге поддерживает отчеты, панели мониторинга, Прежде чем мы перейдем к следующему пункту, позвольте мне поделиться У нас с вами что-то интересное происходит. Если вы хотят развить более глубокие навыки, необходимые для трудоустройства в Анализ данных с помощью ИИ, ознакомьтесь с информацией здесь. [03:02] Профессиональная сертификация компании Symbulance. программа по анализу данных с использованием искусственного интеллекта в сотрудничество с IIT Praatuk. Этот Программа охватывает SQL, Python, PowerBI. обучение, генеративный ИИ, облачный ИИ платформы и агенты искусственного интеллекта для обработки данных [03:15] аналитика. Вы получите практический опыт. опыт работы с более чем 15 интегрированными системами искусственного интеллекта проекты, включая реальные проекты заявки и выпускной проект. Вы также получите доступ к агентному искусственному интеллекту. Masterass от Тима Праатука, преподавателя и [03:28] Двухдневная ознакомительная поездка по кампусу IIT Matas научно-исследовательский парк. Так что, если вы хотите переехать использовать автоматизацию на основе ИИ и интеллектуальные технологии агенты для получения бизнес-аналитики, Эта программа поможет вам сделать следующий шаг. шаг. Итак, прежде чем мы перейдем к следующему вопросу, позвольте мне спросить... [03:41] используется в основном для группировки строк для агрегация? Ваши варианты — A, где B. Ответы вы найдете в разделе комментариев. ниже. Теперь слово нашим специалистам по обучению. Анализ данных в конечном счете сводится к... превращение необработанной информации во что-то [03:56] полезно для принятия решений. Компания может собирать информацию о продажах, клиенты, маркетинг, кампании, финансы, запасы, продукция, сотрудники, веб-сайты или бизнес-операции. Но Простой сбор этой информации не приводит ни к чему. [04:08] Ценность проявляется, когда данные помогают ответить на вопрос. Продавец хочет знать, почему это произошло. В этом месяце выручка снизилась. Традиционно аналитик может сначала... определить правильный набор данных, очистить [04:20] сравните показатели за разные периоды. создать визуализацию, а затем интерпретировать её. Результаты. Генеративный ИИ добавляет еще один этот процесс имеет свой слой. Вместо вручную принимать решения по каждой статье в ходе работы пользователи могут все чаще [04:33] Например, сравните выручку по различным показателям. каждый регион и определить три крупнейших спад. Искусственный интеллект может помочь это перевести. Преобразовать запрос в аналитические этапы. Это могло бы рассчитать метрики, обобщить результаты результаты или создать начальную букву [04:47] визуализация. PowerBI от Microsoft Второй пилот — один из примеров таких изменений. потому что это позволяет пользователям взаимодействовать с аналитические данные с помощью естественного языка запрос. Таким образом, сама аналитика не является исчезновение. Важное изменение заключается в следующем: [04:59] аналитический процесс. Аналитик данных — это... становится более разговорным, более быстрым и все чаще используется искусственный интеллект для оказания помощи. Беседа Аналитика уже становится частью процесса. повседневные бизнес-операции. Согласно Согласно прогнозу Маккензи о состоянии ИИ к 2025 году, 88% [05:13] Организации используют ИИ как минимум в одной из них. бизнес-функция. корпоративная сеть OpenAI Исследование показало, что 75% опрошенных Рабочие заявили, что ИИ улучшил скорость или качество их работы. Пользователи также Сообщается об экономии времени примерно на 40-60 минут. [05:25] в день с помощью ИИ-помощника. Это показывает что искусственный интеллект выходит за рамки экспериментов. Сдвиг — это не просто ускорение вычислений. но более быстрое улучшение со стороны бизнеса От вопроса к аналитическому действию. Проще говоря С точки зрения терминологии, ИИ помогает командам перейти на новые технологии. [05:39] вопросы, позволяющие получить ценные выводы, гораздо больше быстро. Итак, чтобы понять разницу повторить. Итак, чтобы понять разницу очевидно, рассмотрим простые бизнес-задачи. Увеличение в прошлом квартале? В традиционном Сначала аналитик может определить рабочий процесс. [05:53] соответствующие таблицы клиентов. Затем клиентские записи, история подписок, Возможно, потребуется предоставить данные об отмене. объединенные. После этого необходимо обеспечить отток клиентов. рассчитано. Аналитик может сравнить группы клиентов на основе местоположения, [06:06] тип подписки, срок действия или использование. Перед этим может быть создано несколько диаграмм. Генеративный ИИ может проводить оценку на многих этапах эти этапы. Аналитик может обратиться к ИИ. для генерации SQL-запроса для вычислений. Выстрелил. Искусственный интеллект мог бы создавать код на Python для [06:19] сегментировать клиентов. Это могло бы объяснить существующий запрос. Это может быть краткое изложение. дополнительные области, заслуживающие изучения. Это может значительно сократить количество повторяющихся действий. аналитическая работа. Но помощь ИИ и Аналитическая корректность — это не одно и то же. [06:31] вещь. Предположим, организация определяет отток клиентов, когда клиент неактивен в течение 60 дней. Если расчет, сгенерированный искусственным интеллектом Если использовать 30 дней, результат может быть следующим. технически верно при ответе на вопрос Неправильный деловой вопрос. Чем лучше [06:43] помощь в исполнении и работе с персоналом подтверждает результат. аналитик обеспечивает сохранение анализа значимый. Чтобы понять истину Влияние генеративного ИИ: мы не должны Рассматривайте это как отдельный аналитический инструмент. [06:55] инструмент. Мы можем внедрить ИИ повсеместно. полный жизненный цикл анализа данных. Информация может поступать из электронных таблиц. базы данных, API, веб-сайты, бизнес приложения, датчики, клиент платформы или облачные системы. Далее следует [07:08] быть чистым, стандартизированным, объединенным и Проверка проводится до начала содержательного анализа. начинать. Затем следуют данные разведки. анализ. Именно здесь аналитик проводит исследование. тенденции, распределения, взаимосвязи, закономерности и необычные значения. В зависимости от [07:21] создание расчетов, статистических моделей или прогностические модели. После этого наступает визуализация. Полученные данные должны быть представлено в виде диаграмм, панелей мониторинга, отчеты или ключевые показатели эффективности. И наконец, следует Самый важный этап — это принятие решения. [07:34] изготовление. Генеративный ИИ может поддерживать все часть этого путешествия. В процессе моделирования, Это может помочь при работе с SQL, Python или DAX. В процессе визуализации это может помочь создать общение, оно может переводить преобразование технических результатов в более простые бизнес-процессы [07:47] все чаще становится одним из включений слой, охватывающий весь жизненный цикл аналитики. цикл. Хорошая аналитика начинается с хорошей аналитики. данные. Реальные наборы данных встречаются редко. идеальный. Это могут быть дублирующиеся записи. Даты могут отображаться в разных форматах. [08:00] Возможно, некоторые значения отсутствуют. Клиент Имена могут писаться по-разному в разных странах. случайно содержит текст. И информация из разных систем может начинать. Именно здесь вступает в действие ETL. важный. ETL расшифровывается как extract (извлечение). [08:15] извлечено из одного или нескольких источников. Затем информация преобразуется посредством объединение или стандартизация этого. Окончательно, Подготовленные данные загружаются в место, где его можно будет проанализировать. Генеративный ИИ может помочь во многих областях. [08:29] аналитик может запросить поиск дубликата Идентификатор клиента, стандартизация даты отформатируйте и выделите строки, где указан доход. отсутствует. Искусственный интеллект может генерировать Python или также может объяснить существующую трансформацию [08:42] логическое мышление или предложение возможных способов очистки данных шаги. Но искусственному интеллекту по-прежнему необходим контекст. представляет собой отмену транзакции, а не чем незавершенная транзакция. автоматическая замена этого значения могла бы изменить анализ. Итак, принцип [08:54] остается простым. Низкое качество данных плюс мощный ИИ все еще может производить плохие результаты подготовка. Аналитикам по-прежнему необходимо понять, что на самом деле представляют собой эти данные. подготовленные аналитики обычно переходят к Разведочный анализ данных (EDA). Этот [09:08] исследование набора данных перед принятием решения окончательный вывод. Предположим, у нас есть Какой регион генерирует наибольшее количество доходов? Доходы от каких товаров снижаются? наивысшее значение порядка, есть ли необычные значения? транзакций, существует ли взаимосвязь? [09:23] Традиционно на эти вопросы отвечают аналитики. Вопрос с использованием SQL, Python, электронных таблиц. аналитические инструменты. Генеративный ИИ может создавать Этот процесс гораздо больше похож на беседу. Вместо того чтобы вручную принимать каждое решение аналитик мог бы спросить: «Показать операцию?» [09:37] самые важные тенденции в этом набор данных или выявление необычных значений, которые рентабельность по всем клиентам сегменты." Искусственный интеллект может помочь в Дополнительные вопросы или помощь в разъяснении. результаты. Это позволяет аналитикам [09:51] Откройте для себя больше возможностей за меньшее время. Однако интерпретация по-прежнему имеет важное значение. Если две переменные движутся вместе, это происходит это не означает автоматически, что это стало причиной другой. Необычное значение может представлять собой ошибка, но она также может представлять собой [10:04] важное деловое событие. аналитик следовательно, необходимо различать между Анализ бизнеса. Искусственный интеллект увеличивает скорость. исследования. Человеческое суждение полезный. Найти понимание — это лишь один из способов. часть этих уловок с данными. следующий [10:18] Трудность заключается в том, чтобы донести эту мысль до других. четко. Обычно руководитель предприятия так и поступает. отдельные записи о транзакциях. Вместо, Возможно, этому человеку нужны простые ответы. Каков наш доход? Мы выше или ниже? ниже целевого показателя? Какой регион показывает лучшие результаты? [10:31] Требуется немедленное внимание? Визуализация помогает ответить на эти вопросы. вопросы. Диаграммы упрощают понимание закономерностей. идентифицировать. Ключевые показатели эффективности (KPI) выделяют важные моменты. меры. Панели мониторинга предоставляют несколько возможностей. аналитические взгляды в совокупности. Генеративный ИИ [10:44] что означают эти визуализации. Предполагать Панель управления позволяет отслеживать общий доход. может помочь создать первоначальный пояснение, указав на аналитика. к таким возможностям, как более высокие скидки, увеличение затрат, ассортимент продукции, [10:58] помощь в составлении кратких отчетов в естественном формате Язык, но умелое представление данных в виде историй. всё ещё требует человеческого суждения. Добавить 20 диаграммы не создаются автоматически необходимо определить, какие ключевые показатели эффективности (KPI) имеют значение. в большинстве случаев, какое сравнение следует провести [11:11] Зрители видят, что является главным выводом? Какие действия следует предпринять? Искусственный интеллект может помочь аналитик придает бизнес-значение Проблемы становятся все более сложными, отмечают аналитики. может потребоваться создание расчетов, данных [11:25] бизнес-аналитика, моделирование данных могут включает в себя соединение таблиц, определение Расчет бизнес-показателей. В переменные, подготовка признаков, выбор алгоритмы, обучающие модели и [11:38] оценка производительности. Генеративный Искусственный интеллект может помочь в обоих случаях. Аналитик рассчитывает ежемесячный рост выручки на регион или сгенерировать код Python для базовых операций модель оттока клиентов или объясните, что Этот расчет выполняется. Искусственный интеллект может создавать [11:52] логика, лежащая в его основе. Это может уменьшить некоторые из аналитическая работа. Однако, генерация Создание кода сильно отличается от его создания. еще предстоит определить, является ли Используются правильные переменные. Данные [12:06] должно отражать реальное население. Данные Необходимо избегать утечек. соответствующий модель должна отвечать реальным бизнес-проблема. Искусственный интеллект может помочь аналитику Экспериментируйте быстрее, но этого делать не следует. устранить необходимость понимать, как [12:19] Модель работает. Поэтому аналитики могут тратить меньше. время, запоминание каждой детали синтаксиса Сам по себе аналитический подход является правильным. Традиционный анализ часто начинается с понимание того, что произошло в прошлом. Доходы снизились, клиентская база оборвалась. [12:31] увеличились запасы, сократились запасы, и в одном регионе промахнулся мимо цели. Но руководители предприятий Обычно хотят пойти дальше. Они хотят Спросите, что, скорее всего, произойдет дальше. Этот Именно здесь прогнозирование приобретает важное значение. Организации регулярно прогнозируют объемы продаж. [12:43] поведение, требования к запасам и потребности в персонале. Традиционно аналитик методы обучения, электронные таблицы функции или специализированное прогнозирование программное обеспечение. Генеративный ИИ может помочь в этот процесс. Например, аналитик мог бы [12:56] попросить ИИ сгенерировать код на некоторое время Модель временного ряда, объяснение результатов прогнозирования. выявить предположения или предложить различные подходы к прогнозированию. ИИ может Также поддерживается сценарный анализ. Предполагать Ожидаемый спрос составляет 50 000 единиц. [13:08] Руководство может спросить: «Что произойдет, если...?» «Спрос увеличивается на 15%». Или: «Как бы...» увеличились сроки доставки, в то время как дольше? Искусственный интеллект может помочь рассчитать и быстро. Но прогнозы — это лишь оценки. Исторические тенденции не гарантируют [13:22] будущие результаты. Изменения цен, конкурирующая деятельность, экономические условия, Непредвиденные события могут повлиять на результаты. Аналитик определяет, сколько В это следует возложить уверенность. прогноз. Так где же эти устройства, работающие на основе искусственного интеллекта? [13:35] Аналитические возможности, появляющиеся сегодня? Одной из важнейших областей является бизнес-аналитика. PowerBI Copilot позволяет пользователям взаимодействовать друг с другом. с аналитическими данными посредством естественных язык, задавайте вопросы, анализируйте визуальные материалы. и создавать сводные отчеты. Искусственный интеллект как помощник — это [13:47] и рабочие процессы в области анализа данных. Microsoft Fabric Co-Pilot может помочь. понимание данных в блокноте Модели искусственного интеллекта также могут помочь с SQL. запросы, код на Python, электронные таблицы [14:01] анализ, документация, пояснения и повторяющаяся аналитическая задача. Эти практически все бизнес-функции. А Маркетинговый аналитик может сравнить кампанию. производительность. Финансовый аналитик мог бы расследовать необычные изменения в расходах. А [14:14] аналитик продаж мог бы обобщить информацию о клиенте. производительность. Оперативная группа может Важный момент заключается в том, что генеративный ИИ — это не создавая совершенно отдельный мир все чаще интегрируются в инструменты. и рабочие процессы, которые аналитики уже используют. Он [14:29] от организации к другим, но в целом Процесс остается аналогичным. Бизнес вопрос, данные, помощь ИИ, проверка и принятие решения. Искусственный интеллект ускоряет объективно, и доказательства по-прежнему принять окончательное решение. Ну и что [14:41] Каково будущее анализа данных? Как обычно выглядят? Вряд ли это будет будущее, где профессионалы просто прекращают анализировать данные об обучении и просить ИИ делать вероятно, переместится выше по иерархии процесс принятия решений. ИИ может [14:54] аналитическая работа, например, генерация запросы, написание кода, очистка данных наборы, обобщение информации, сокращение первоначальная визуализация и идентификация аналитики получают больше времени, чтобы сосредоточиться на вопросах. Например, является ли этот набор данных надежным? Являются [15:08] Мы измеряем правильный KPI? Почему это Эта закономерность повторяется, и что? Возможно, не хватает информации? Или нет Повторю ещё раз, или же это заключение? Имеет ли это смысл с точки зрения бизнеса? Какое решение? Что на самом деле следует сделать? Это не так. [15:20] простые вопросы по программному обеспечению. Они есть вопросы аналитического мышления и то, что Различие важно. То же самое относится и к инструментам искусственного интеллекта. стать более способным, просто зная, как Возможно, простого управления программным обеспечением будет недостаточно. Аналитикам потребуется все больше [15:32] вопросы, оценивать доказательства, выявлять Результаты очевидны. Итак, будущий аналитик сочетает в себе четыре сильные стороны. Бизнес понимание плюс навыки работы с данными плюс аналитическое мышление и возможности искусственного интеллекта. [15:45] Генеративный ИИ может ускорить анализ. более разговорный и более контекст, суждение, ответственность и решение-м. И именно это сочетание и является тем, что преобразует необработанную информацию в надежные и Практически применимые бизнес-идеи. Выстрелил. я [16:00] были связаны с простым и Я работаю в этой отрасли уже некоторое время. более 11 лет. Я был в корпоративное обучение и консультации далеко. Я взял... я был с... более 55 организаций, в основном [16:13] для корпоративного обучения. Я беру корпоративные тренинги по MS Office 365 приложения для повышения производительности офиса навыки, в основном, и с этим я имею Я совершила трансгендерный переход пять лет назад. Владею PowerBI, Tableau и наукой о данных. [16:27] Это краткое представление обо мне. И мы здесь вместе ради данных. Манипулирование данными при получении с помощью SQL. Сначала мы познакомимся с Сначала мы изучим SQL, а затем перейдем к следующему разделу. что мы изучаем в рамках курса. Верно? Так что в [16:42] Мы будем учиться на протяжении всего курса. Далее вы узнаете, что такое данные. типов. Мы также увидим, что такое данные, что это база данных. Мы должны двигаться дальше и Здесь следует понимать контекст базы данных. здесь. Кроме того, мы поймём кое-что ещё. [16:57] Более подробное описание концепции DBNS, например, нормализация. а также другие навыки повышения эффективности. Однако В рамках этого курса мы также собираемся Посмотрите на запросы select uh, это значит... [17:09] Что может делать SQL. Итак, что же такое SQL в самом деле? SQL? Зачем мы это используем, и мы будем это использовать Изучайте всё с самого начала. о том, как извлечь данные, о том, как создать базу данных до Windows функции. Итак, мы рассмотрим следующее: [17:25] функции. Итак, мы рассмотрим следующее: Весь SQL будет рассмотрен на следующих занятиях. Первый прежде чем мы просто углубимся в то, что есть В SQL существует несколько терминов, которые мы используем. нужно убраться, чтобы все могли все придерживаются того же мнения. Итак, поехали! [17:38] мы вернемся снова, и сначала мы Необходимо понимать, что такое база данных. Мы Также необходимо понимать, зачем нам это нужно. это. Хорошо. Что представляют собой данные согласно информация. Все в порядке. сырые факты, сбор информации, набор [17:54] информация, конкретный формат, набор информация. По сути, мы говорим информация. По сути, мы говорим Эти данные являются достоверной информацией. Так Эти данные являются достоверной информацией. Так если я всё-таки кое-что здесь напишу [18:18] числа. Там есть некоторый текст. Но делает ли Это вообще имеет какой-то смысл? Итак, что же такое данные? В очень простыми словами, очень-очень простыми словами. слова, данные — это структурированная информация сохранено в надлежащем формате. Сохранено в правильный формат. Формат может быть любым. [18:35] В этом формате может быть CSV, вот такой формат. может быть текстом. Но это должно быть в каком-то формате. чтобы контекст также был ясен. Хорошо? Это может быть и Excel. Это может быть в... [18:47] Это может быть и Excel. Это может быть в... Также и JSON. Это может быть что угодно. Итак, есть множество форматов, в которых мы можем продолжить. открыть. Его можно сохранить в нескольких местах. Там разные форматы. Вот это да! простая структура или определение [19:00] простая структура или определение данные. Что же такое база данных? Данные относятся символы. Его можно обработать и Проведен анализ с целью извлечения полезной информации. Итак, если это данные, и мы... [19:13] поскольку мы сохраняем эти данные в надлежащий структурированный формат. Это может быть что угодно. Текстовый CSV-файл, файл Excel или что-то подобное? сохранено в таблице все, что там находится под любым объектом. Итак, что же подразумевается под этим? база данных? Что такое база данных и зачем она нужна? [19:28] база данных? Что такое база данных и зачем она нужна? Нам это нужно? Данные хранятся в нескольких экземплярах. система, в которой хранятся данные о количестве хранилище данных, где хранятся данные организован и может быть использован в качестве справочного материала, когда это необходимо. необходимо там, где собраны структурированные данные [19:43] Данные сохраняются. Хорошо. Итак, мы видим Здесь, где была вся информация. собрано. По сути, мы говорим что внутри имеется надлежащая основа Мы собираемся продолжить и, э-э, сэкономить. наш набор данных. Верно. Итак, давайте разберемся [20:00] наш набор данных. Верно. Итак, давайте разберемся по одному. Здесь представлены данные в сжатом виде. Это может быть фактом. Это могут быть цифры. Он может любой другой формой информации изображение, текст, иконка, картинки, что угодно. Верно? Обычно они имеют следующую структуру: [20:13] определенным способом или хранился даже в течение определенного времени. конкретная цель. Вы не можете просто уйти. заранее и сохранить любую случайную информацию. Вместе это будет храниться в течение также для конкретной цели. Теперь эти данные Здесь, когда все будет в одном файле, давайте... [20:26] Допустим, здесь есть один CSV-файл, тогда мы... Хорошо, что этот CSV-файл сохранен у нас. система находится в какой-то папке там. Даже сейчас, если В вашей системе имеется несколько папок. У всех вас несколько файлов. Возможно, это файлы Word, презентации PowerPoint. [20:40] Возможно, это файлы Word, презентации PowerPoint. PDF-файлы, файлы Excel — все они сохранены для конкретная цель в определенном папка. Да. В общем, что вы делаете? В вашей собственной системе вы можете действовать. вы управляете этим, организуете это и [20:52] соответственно, время от времени вы его меняете. и вы его меняете, обновляете, исправляете и вы продолжаете добавлять в него все больше данных, поскольку необходимый. Таким образом, здесь ситуация аналогична. вся эта система или папка, которая В вашей системе есть возможность позвонить. [21:07] В вашей системе есть возможность позвонить. Это также право на базу данных, которое мы можем назвать Это тоже база данных, почему? Потому что Здесь представлена ​​просто структурированная база данных. набор данных, который обычно хранится на компьютере, чтобы мы могли [21:20] Получайте к нему доступ, управляйте им и обновляйте его. легко. Таким образом, получается база данных. Однако, если мы перейдем в пределах базы данных, и ссылаться на наши собственные системы как база данных здесь, потому что она подходит Здесь приведено определение, легко ли двигаться дальше? [21:35] и найти два связанных файла, если они есть. на совершенно разных дисках? Мы Понимаете эту логику? Как работают эти два файла? связаны друг с другом. Для например, ваши расчетные листы и налоговые декларации. возвраты, они связаны друг с другом [21:48] две разные папки, две отдельные Папки находятся прямо здесь. Ваши инвестиции Подробности находятся в другой папке. твой Расчетный лист находится в другой папке. Но ты не знаю, что эти две вещи связаны друг с другом. Логично. Так [22:02] С этим не так-то просто справиться. Выходы организованы, потому что вся логика заключена в организованы, потому что вся логика заключена в Наши мысли прямо сейчас. Хорошо. Поэтому у нас есть несколько разных типов системы управления базами данных. В базе данных [22:16] системы управления, вот они: системы, специально разработанные именно для системы, специально разработанные именно для управлять, организовывать и собирать данные. управлять, организовывать и собирать данные. там и для обеспечения возможности использования несколькими пользователями. [22:29] легко получить к нему доступ, даже не вмешиваться в эти данные. Итак, если мы к данным могут получить доступ несколько пользователей. извлечь данные тоже. Плюс в то время как изменение и обновление данных конкретная система управления данными делает [22:44] данные являются согласованными там, где данные имеют проверено должным образом и плюс правильно Данные загружаются. Итак, всё это это можно сделать в рамках этого управления там есть система. Итак, определение базы данных вам Все они абсолютно верны. Так что же это такое? [22:59] СУБД? Система управления, которую они имеют созданный, в котором они сохраняют это созданный, в котором они сохраняют это этот набор данных и работа над ним продолжается извлечение, модификация, обновление данных установлен там. Итак, теперь внутри базы данных мы [23:14] Согласен, что существует несколько наборов данных. Проблема здесь в том, зачем нам это нужно. Здесь система баз данных? Всякий раз, когда мы творим В системе баз данных есть несколько моментов. Это здесь очень-очень важно. Так Например, прямо сейчас у вас есть файлы в [23:30] Ваша система, верно? Допустим, у вас есть У вас на рабочем ноутбуке два файла, один из них. один предназначен для сотрудников, а другой — для отдел, и есть два отдельных Excel, она, файлы Excel, рабочие книги Excel, так что Если я вас об этом спрошу, можете ли вы ответить? [23:43] и найдите мне менеджера по маркетингу. личные данные, как вы это найдете? Давайте снова зададим вопрос. Допустим, у вас есть... В вашей системе отображаются две таблицы Excel без проблем. Допустим, сейчас у нас есть две рабочие книги Excel. Здесь представлены данные о сотрудниках и [24:00] У одного есть информация о департаменте, и если я спрошу Если вы здесь, можете смело брать. меня в личной информации, например, Здесь представлена ​​личная информация менеджера по маркетингу. Как вы это получите? Что нам нужно сделать? потому что нам нужно разобраться в этом. [24:16] выясните, кто этот человек. и данные о сотрудниках, давайте представим. Итак, у нас есть личный сотрудник. подробные данные предоставляются отдельно только с Поэтому нам нужно открыть оба. Перед нами таблицы Excel, и у нас есть [24:30] сначала выяснить, какой отдел подробности. Мы сейчас же проведём фильтрацию. любой менеджер или где бы ни находился отдел маркетинга менеджер есть. Мы должны двигаться дальше и Человек отсутствует, мы проверяем наличие сотрудника. [24:42] ИДЕНТИФИКАТОР. Как только у нас появится информация о сотруднике этого человека Идентификатор, мы возвращаемся к данным сотрудника. Мы отфильтровываем идентификатор сотрудника, а затем мы Выведайте из этого подробности. Так что либо мы делаем это вручную или используем функцию VLOOKUP, или что-либо. Нам нужно осуществить слияние. [24:55] оба стола вместе или, по крайней мере, открыть их одновременно, поскольку мы не можем объединить. Объём данных огромен. Хорошо. Поэтому вам нужно Давайте, поговорим об Excel. рабочая тетрадь. Так что ничего подобного не произойдет случаться. Мы находимся в рабочих книгах Excel. [25:07] прямо сейчас на экзамене. Верно? Итак, это Как этого не происходит. Вот почему они придумали это управление файлами Система не работает. Хорошо. С ним Здесь есть два очень важных момента. Здесь что-то происходит. Сначала получаем данные [25:22] Главное ограничение здесь в том, что извлечение набора данных. Если я захочу Давайте, получите данные, они есть. очень-очень сложно. Если мы копим внести все данные организации Файлы Excel доступны только на некоторых общих дисках. [25:36] Файлы Excel доступны только на некоторых общих дисках. Тогда мы понятия не имели, как люди... кто получает данные кто обновляет укажите, сколько человек будут обновлять набор данных правильный, поэтому в этом случае здесь мы [25:48] слишком много ограничений, первое Суть в том, что никакой безопасности нет, понятно? потому что он находится на общем диске, все Файлы Excel используются в финансовой сфере. маркетинг для цифрового маркетинга для HR Итак, во-первых, безопасность отсутствует, и если [26:02] Присоединение нового пользователя. организации они возвращаются и обновляют организации они возвращаются и обновляют Это набор данных в их кадровом файле, кто-то... делать это вручную. Итак, когда это делается вручную Продолжаем обновлять набор данных. [26:16] и ответственность несет не один человек. для этого. Итак, если их несколько будет несколько дубликатов набор данных. Если я сохраняю идентификационный номер сотрудника, имя сотрудника, фамилия сотрудника, Номер телефона сотрудника, адрес электронной почты. Так что, если я [26:30] иметь личные данные сотрудников, которые будут тоже там быть. Если у меня есть сотрудник, э-э рабочие детали, я должен их сохранить контактные данные также указаны там на случай, если мы Нужно связаться с ними. Так Таким образом, будет много дубликатов. [26:43] там есть данные, и вот так будет Здесь действуют дополнительные ограничения. Вот почему они разработали СУБД, то есть базу данных. система управления. Это было совершенно системы другого типа. Внутри в системе каждая таблица была сохранена как [26:58] объект, называемый так, как будто каждый элемент данных был сохранен. в виде объекта, называемого таблицей. И это Таблица была составлена ​​из строк и столбцов. Теперь вы, должно быть, думаете: почему? Вы говорите нам про стол? Мы знаем, как Вот как выглядит таблица. Я в этом уверен. [27:12] Давайте узнаем об этом немного больше. то, что мы называем столом. Технически а то, что мы называем столом. Технически а Данные называются табличной структурой, которая мы сохраняем это в табличной структуре. только если в нем есть и строки, и столбцы. [27:26] Кроме того, первый ряд всегда будет называться в качестве заголовка. Первый ряд должен быть заголовок и заголовок каждого столбца должны имеют свой собственный тип данных. Если это число, это обязательно должно быть число. Если это дата, это обязательно должна быть дата. Все из [27:40] от первого ряда до конца. И когда мы чтение этого набора данных или этой таблицы Здесь мы будем читать сверху вниз. всегда. Верно? Итак, это и есть СУБД. всегда. Верно? Итак, это и есть СУБД. Теперь у СУБД осталась только одна проблема. Хорошо? Это [27:55] Устранены проблемы с проверкой данных. Это привело к утрате согласованности данных. проблемы, потому что теперь у нас есть безопасность потому что мы обеспечиваем безопасность на уровне рядов. там. Мы закрепляем это на столе. там на уровне. У нас всё хорошо. Мы можем дать [28:08] доступ к тем людям, к которым мы хотим. Что Хорошо разбирался в СУБД. Однако у них были одна огромная проблема заключается в этих таблицах. Это были отдельные таблицы. Они не были вообще не связаны друг с другом. Итак, если Внутри сохранена одна таблица. [28:23] объект, я могу приступить к извлечению таблицы. оттуда. Однако я считаю, что это не так. связаны друг с другом. Итак, сотрудник Таблица не связана с отделом. отдел не связан с клиентом или таблицу поставщиков. Общего нет. [28:37] или таблицу поставщиков. Общего нет. Между ними вообще нет никаких ключевых моментов. Так что так когда с реляционной базой данных. Они поднялись с реляционной базой данных. Теперь они поняли, что нужно посмотреть, если мы Нам нужен столик, хорошо, нам пора идти. [28:52] Далее, соедините эти таблицы. Так Сохранение только структуры таблицы не является работает на нас. Поскольку масштабирование баз данных Каждый день нам нужно двигаться вперед и связать несколько подробных таблиц с помощью друг друга. Но как нам их связать? [29:06] друг с другом? они идут вперед и они Соедините их, используя общие столбцы. Так если бы у нас был отдельный стол, скажем так Если бы у нас был такой отделочный стол, [29:18] Если бы у нас был такой отделочный стол, мы обязательно продвинемся вперед и добавить идентификатор сотрудника. Итак, этот идентификатор сотрудника будет выступать в качестве ключа или общего столбца. Если Я добавил сюда идентификационный номер сотрудника, который... Идентификационный номер сотрудника — скажем, 101. [29:35] Возможно, идентификационный номер сотрудника этого человека — [указать номер сотрудника]. 103 106 и точно так же хорошо, так что мы можем продолжить. Нам нужно обновить Идентификационный номер сотрудника находится здесь, после этого. Если это сейчас, то с чем мы это связываем? [29:50] легко связать его с сотрудником почему таблица? Потому что таблица сотрудников тоже есть. Теперь у меня будет идентификационный номер сотрудника. становится проще Теперь мне не нужно идти и искать. Итак, это [30:02] реляционная база данных. В межличностных отношениях база данных, хорошо, мы продолжим. Соедините несколько таблиц на основе на общих колоннах. Если общий столбец Они хорошие. Если этого там нет, то пойдем дальше. и мы создаём отношения посредством [30:16] и мы создаём отношения посредством создание ключей. Верно? Итак, вот это становится реляционной базой данных. Теперь эти Современные базы данных очень-очень разные типы. Один из типов, представленных здесь, — это MySQL. Хорошо, мы [30:30] Мы собираемся учиться работать с MySQL. Посмотрим. прямо сейчас. Это называется реляционная база данных, где у нас есть общие колонны, и мы их соединяем. вместе. Итак, давайте рассмотрим различные типы существующие в настоящее время базы данных. Настоящее время [30:44] Ситуация изменилась, потому что появилась база данных. Здесь, как и в реляционных базах данных, это может Сохраняйте только дату, цифры и текст. Это это. Если данные находятся в пределах этого диапазона База данных может легко сохранить это в табличном виде. структура. [30:59] базы данных, которые у нас здесь есть. Сначала у нас есть СУБД. Теперь у нас есть реляционная база данных. здесь. Это первый год. Затем Затем У нас здесь база данных NoSQL. А затем здесь [31:13] Это графовая база данных. Затем у нас есть централизованная база данных и Интересно, почему я пишу сначала, потом снова? Я здесь третий год, но пишу первой. и второй прямо здесь снова, потому что Это базы данных различных типов. [31:28] типы на основе различных Базы здесь. Итак, реляционные базы данных, NoSQL и база данных графиков здесь эти три Базы данных различаются по следующим признакам: [31:41] тип данных, которые мы видим внутри него. Они основаны на типе данных, которые мы видим. Они основаны на типе данных, которые мы видим. внутри него. эти распределенные централизованные это в зависимости от местоположения. Это основано на [31:57] в зависимости от местоположения. Это основано на местоположение данных. Местоположение базы данных Это зависит от местоположения, или, можно сказать, тип местоположения. Итак, давайте перейдем к тому, что такое реляционные отношения. база данных? Что такое NoSQL и GraphSQL? Так как [32:12] Я только что объяснил вам, хорошо, что Реляционные базы данных — это то, что нужно всем? является Мы здесь не называем их столами. Мы говорят, что это объекты данных, которые представлены в виде таблиц. Хорошо, они связаны между собой предопределенными [32:26] отношение. Что такое предопределенный Какие здесь отношения? Общие колонны, верно? И, конечно же, иногда случаются ссоры. их также называют записями. Столбцы Здесь они называются атрибутами. И каждый Атрибут содержит только один тип данных. [32:39] тип, и нас это вполне устраивает. У нас есть Я уже видел это в таблице. структура. Кроме того, мы создадим ключи. и общие колонны для установления отношение. Это наиболее распространенный вариант. Тип базы данных здесь, и это следующие базы данных. [32:52] два примера. MSQL, MySQL, Postgrade, SQL 2. Теперь следующий год — следующий, вот что... База данных NoSQL. Что такое база данных NoSQL? каждый? Эм, раз уж речь зашла о социальных сетях, хорошо? [33:05] каждый? Эм, раз уж речь зашла о социальных сетях, хорошо? После 2010 года масштабы его деятельности значительно расширились. данные, которые они начали собирать. Хорошо. Его масштабы достигли миллиардов. только тогда. Так [33:18] у них есть эти сайты социальных сетей набор данных, включающий не только ваш адрес электронной почты, пароли и информация о группе, их значение не только числа, буквенно-цифровые обозначения, даты и текст. Теперь у них есть и ваши изображения. У них есть подкаст, несколько аудиоклипов, [33:35] У них есть подкаст, несколько аудиоклипов, видео и комментарии, блоги, статьи, В сети есть целые веб-страницы. Итак, теперь мы имеют нетабличные базы данных, вот в чем дело. что мы можем создать базы данных, которые не могут быть созданы хранится там просто в таблице. Поэтому они [33:50] Здесь придумали NoSQL, а вот эти — вот эти. хранится в виде JSON-документов, а не просто в формате JSON. документы, которые являются объектами JavaScript нотационные документы, они написаны Они запрограммированы по-разному. по-разному. Если вы посмотрите на них [34:04] Окей, похоже, это фигурные скобки и очень много запятых и двоеточий, но Геральные данные и огромные массивы данных могут быть сэкономлено в очень-очень маленькой сумме. Так Здесь находятся JSON-документы, хорошо, они есть. классифицированы по нескольким категориям, таким как [34:18] Модели данных документируют ключевые значения посредством столбцовые и графовые базы данных без SQL столбцовые и графовые базы данных без SQL Базы данных легко масштабируются. Если существуют какие-либо социальные сети, то... объект JavaScript, предоставляющий права на приложение [34:34] Вот эта запись. Как будто у нас есть файлы Excel, верно? Я так и сделаю. Здесь я покажу вам файл, вот он. Файл объектной нотации JavaScript — это Файл объектной нотации JavaScript — это как Excel CSV JSON хорошо goj JSON ты [34:48] Возможно, я тоже об этом слышал, так что вот эти являются своего рода расширениями данных. это другой формат написано с большим количеством точек с запятой и внутри него. Я покажу вам пример. позже. Таким образом, эта база данных NoSQL может сохранять [35:03] изображения в пикселях. Оно может определить, что слишком. Верно? Примеры баз данных NoSQL Вот MongoDB, Amazon, Dynamo, Apache, э-э, HBase. Если вы слышали о Hadoop также связан с Только это. Итак, когда у вас есть эти [35:18] Это данные такого рода, и мы хотим их сохранить. Мы не сохраняем это в Oracle или MySQL. Переходим к базам данных NoSQL. Затем мы получили базу данных Grab. Ты Здесь вы найдете информацию о графовых базах данных. У [35:32] Когда вы заходите на LinkedIn, сразу же... Вы просматриваете чей-то профиль. Это говорит о том, что... кто бы ни имел посетили этот профиль также посетили эти профили или это общие профили У вас есть связи. Это ваше [35:45] уровень соединения. Это ваши три Плюс уровень подключения. Вы когда-нибудь Заметили это в LinkedIn? Как вы это делаете? думаю, они сохраняют набор данных с помощью их? Допустим, это вы, хорошо? У вас, допустим, тысяча. [35:58] связи там. Это ты. Теперь ваша очередь У меня здесь тысячи контактов. Теперь все Как именно устанавливаются эти связи? знать, какой из них находится на втором уровне, первый уровень, э-э, второй уровень или первый уровень, если появится что-то новое, новое [36:13] Во-первых, появляется новый человек, а также они знайте, что они связаны друг с другом другой. Они знают, что кто бы ни был следующим человек, появляется новый человек, этот это означает, что сеть контактов этого человека — совпадая с тобой [36:31] сеть снова, э-э, первый уровень, второй Уровень, можно ли его сохранить в... э-э... Уровень, можно ли его сохранить в... э-э... файл типа Excel, хорошо, где, если вы Попробуйте это сделать, их будет много. избыточность, повторение каждый раз, потому что [36:47] если вы спасаете сеть хотя бы одного человека Возможно ли спасти хотя бы одного человека? Сколько человек в сети? LinkedIn, и все они связаны с... друг друга. Поэтому сохраняйте это любым способом. Формат очень сложен и [37:00] Конечно, это огромный массив данных. Поэтому они используют облачные технологии. база данных. Эта облачная база данных в порядке, они использовать графовые структуры, хорошо, которые имеют узлы ребра атрибуты родитель и потомок отношения и тому подобное. Вот и всё. [37:14] как они в итоге копят деньги. Так что это просто Графовая база данных — мы с ней работать не будем. В дальнейшем мы будем работать над СУБД. Мы Собираюсь работать с реляционными базами данных. только. Верно? Мы собираемся работать над и мы будем учиться с помощью [37:28] MySQL. Теперь давайте поговорим о том, что такое централизованность. и что такое децентрализация. Так что же это такое? Здесь централизованная база данных? Как говорится Здесь централизованная база данных? Как говорится что это магазин, расположенный в другом месте. [37:40] поддерживается в одном месте, например, мэйнфрейм. Таким образом, существует Те, кто не связан с технологиями На заднем плане — огромный компьютер. Хорошо. Это своего рода физический сервер, который все подключенное к нему оборудование и [37:55] оно расположено где-то в одном-единственном месте. место. Теперь каждый, кто работает в Именно в этом месте. Хорошо. С С помощью интернета они могут продолжить. и получить доступ, э-э, получить доступ к любым данным, которые они Что делать дальше? Хорошо. [38:11] база данных. Как вы думаете, это произойдёт? испытываете какие-либо трудности или... э-э... Здесь есть ограничения? Есть преимущества, очевидные преимущества. Это будет недорого и просто. обслуживание. [38:26] обслуживание. Но каковы ограничения? Да, мы храним данные здесь. Все данные хранятся здесь, в одном месте. Да, если вам нужно масштабировать данные, мы должны убедиться, что наше оборудование [38:41] с этим справится. Правильный. Оба могут знать Если у меня будет один компьютер, я его поставлю. в одном географическом месте, верно? Это Это не будет дорого. Да. Но если она повреждается или замедляется, вся организации будут похожи на сервер [38:58] работа. Да, обеспечить безопасность проще. данные, потому что это всего лишь один единственный место. Управлять данными проще. Также потому, что это всего лишь одно место. Но если что-нибудь случится здесь или там Сервер тормозит, хорошо, мы собираемся... [39:11] сталкиваться с этой трудностью довольно часто, если Объём данных стремительно растёт, не так ли? Если там Слишком много людей пытаются получить доступ к У меня та же проблема, и оборудование не работает. Если одновременно окажется так много людей, это произойдет. задержка. Загрузка может занять больше времени. [39:27] данные тоже, и если они будут исправлены, то наши Резервное копирование по-прежнему находится в этом главном фрейме. Так что всё будет сделано. Итак, мы находимся в Риск потерять его есть, но у нас всегда есть резервная копия. Хорошо. Итак, это централизованная система. база данных и большая часть организации [39:42] большая часть организации будет иметь централизованная база данных содержит только все Работает только с централизованной базой данных. потому что к нему легко получить доступ и им легко пользоваться [39:54] и масштаба. Теперь, после централизации Здесь у нас распределенная база данных. база данных. Что такое распределенная база данных? здесь? Хорошо, это коллекция. Это объединенная коллекция связанных базы данных, физически распределенные [40:07] базы данных, физически распределенные в нескольких местах. Вот оно. заявив, что они распространили база данных в нескольких физически расположенных все еще подключен к компьютеру сеть, и у них есть базы данных. [40:21] сеть, и у них есть базы данных. внутри. У них будут базы данных. всё будет связано друг с другом другой. А что произойдет, когда база данных будет... Вот так? Теперь, когда у нас есть пользователи, [40:34] Здесь, когда у нас здесь находятся пользователи, они все еще могут связаться с набор данных. Хорошо. Используя серверы, Но да, конечно, они будут. распределяется в соответствии с их потребностями доступ в соответствии с их требованиями [40:47] смело получайте доступ к данным. соответственно. Каковы же пределы? Каковы преимущества или ограничения? Как вы думаете, вы там будете? Сеть зависимость. Это было указано в брифе. Высокие затраты на техническое обслуживание. Это верно. [41:01] Возможно, это будет быстрее. Да, безопасность данных — это проблема. Необходимо поддерживать его на этом уровне. все уровни, и теперь вам нужен больший команда для решения всех физических вопросов и мест тоже. Но если есть огромная данные, они не могут сохранить их в одном месте. [41:15] место. Они распределят его по всей стране. местоположения. Google этим пользуется. Google использует местоположения. Google этим пользуется. Google использует распределенная система на основе данных другое название базы данных. Да. И Масштабирование проще. что означает масштабирование [41:28] им не нужно складывать, продолжайте складывать Слишком много оборудования или систем — вот что это может привести. проще, так что теперь мы здесь это понимаем. это разные типы базы данных — вот с чем мы будем работать. Мы будем работать с реляционными базами данных (RDBMS). [41:41] Мы будем работать с реляционными базами данных (RDBMS). Здесь СУБД (Real-DB/Real-DBMS) является наиболее востребованной, почему? потому что большая часть данных организаций то есть, они хотят проанализировать его дату. то есть, они хотят проанализировать его дату. Числа и текст, поэтому СУБД — лучший вариант, верно? [41:55] И к тому же это простой мэйнфрейм. Мы можем подключить его к локальному компьютеру. интернет, и мы можем к нему подключиться легко. Поэтому это самый востребованный вариант. легко. Поэтому это самый востребованный вариант. там, но да, с учетом необходимости в [42:07] системы социальных сетей и слишком много различные типы наборов данных, которые они могут необходимо масштабироваться до NoSQL или Grab база данных. Очень хороший. Итак, вопрос Вот что характеризует эту систему: имеющие логически структурированные данные [42:20] взаимосвязанные физически распределенные на нескольких участках внутри компьютера сеть. Как здесь указано, распределено Хорошо, это тот ключ, который нам нужен. Так Ответ будет C. Теперь давайте продолжим. [42:33] и разбираться в SQL. Что такое SQL? Мы подробно рассмотрим, что такое СУБД и Мы подробно рассмотрим, что такое СУБД и Это СУБД? Итак, начнём с SQL. Так Давайте перейдём к части этого SQL-запроса. В SQL первым идет язык программирования. Что такое [42:48] В SQL первым идет язык программирования. Что такое язык? Таким образом, любой язык. Итак, вот это что-нибудь. Что мы понимаем под этим? сейчас? А теперь вот он, язык. посредством которого мы задаём вопрос. С Это язык, у него должны быть свои особенности. [43:02] правила и грамматика. Верно? Вот почему Это сооружение. Так что у него будет свой собственные правила и положения, которым мы следуем во время разговора друг с другом. Мы идём Как бы вы поступили, если бы бросили это? предложение, которое представляет собой словарный запас, который [43:17] Вам нужно продолжать и оставить это с собой. Вы правы. Таким образом, структурированный язык запросов Таким образом, это язык запросов. который был создан для того, чтобы задать вопрос вопросы к базе данных и получение ответов нужные вам данные или, если хотите, [43:29] Продолжайте сохранять набор данных. вы просто задаете вопросы язык программирования. Что такое язык программирования? Мы создаём Там что-то новое. Мы программируем Там что-то новое. Поэтому мы не спрашиваем [43:42] или создавая что-то новое в мире, или Вся структура чего-либо. Нет, а Структура уже существует. Мы просто взять и достать Вот и все данные оттуда. Хорошо. Так В данном случае под структурированным языком запросов подразумевается следующее: [43:55] мы используем язык, который имеет имеет свои собственные правила, нормы и лексику. и используя этот язык, мы говорим к машине и задавая вопросы к нему. Вот и все. это SQL Язык структурированных запросов. Да, [44:09] Абсолютно верно. Теперь давайте разберемся Вот что может сделать SQL. SQL может выполнять следующие операции: а) если мы скажем здесь, что это можно продолжить. выполнять такие операции, как создание, [44:21] читать, обновлять и удалять. Это они операции, которые мы можем выполнять с помощью SQL. То, что мы здесь создаём, мы можем создать и сами. база данных внутри аппаратной структуры что у нас есть в наличии. Мы можем создать стол. Мы можем вставить значения uh. [44:35] внутри него. Мы можем это сделать, если вы хотите обновить. Если вы хотите как-то это изменить, Вы хотите удалить структуру или... строка, или, может быть, я хочу обновить какие-то данные. строка, или, может быть, я хочу обновить какие-то данные. помещено внутрь него. Теперь, когда мы вносим изменения [44:48] и сохраняя данные внутри него, как только он будет Сделано, это моя часть. Другой человек, который хотят просто извлечь данные и анализ данных, которые будет использовать этот человек чтение этих данных. Поэтому во время чтения Прочитав данные еще раз, мы получим [45:00] Необходимо выполнить несколько шагов. Итак, это оно. Здесь используется CRUD, и вот как мы можем это читать. Данные здесь. Итак, это четыре из них. Здесь описаны четыре основные операции. Теперь MySQL — это язык программирования. Это не только SQL — это не язык, который используется в одном контексте. [45:15] Мы используем данные только в рамках одной базы данных. Хорошо. Он имеет множество применений в различных областях. множество приложений и платформ. И Почему мы учимся с помощью MySQL? Потому что MySQL — бесплатная программа. Во-вторых, это Самый простой способ выучить SQL. Если вы [45:30] Здесь вы изучите основы, и вы сможете способный адаптироваться к любым изменениям, которые вы можете внести. найти в MSQL, Oracle, PL/SQL или Снежинка, по мере вашего продвижения вперед. Верно? Таким образом, основные принципы остаются неизменными. Это система с открытым исходным кодом. [45:43] Это система с открытым исходным кодом. Хорошо? И использовать очень легко очень простой графический пользовательский интерфейс Поэтому мы будем использовать это здесь. Хорошо. Так Теперь давайте разберемся в разнице между СУБД и РЕДСМ. Он хранит данные как [45:55] файл. Э-э, мы это знаем прямо сейчас, наша СУБД Здесь хранятся данные в виде... Здесь хранятся данные в виде... таблицы. Теперь, э-э, СУБД может иметь несколько пользователи. Мы можем соединить таблицы с помощью общие столбцы, являющиеся внешними ключами [46:08] и там находятся основные ключи, и это Простой поиск информации в СУБД и всё такое. Подача мяча медленная и распространенная. Итак, у нас есть Я уже через это прошёл. А теперь немного Проверьте еще раз, какая система считается самая популярная и продвинутая версия [46:22] СУБД с примерами, такими как MySQL и Oracle. и MSQL. Как мы только что обсудили, это Наша СУБД здесь, надеюсь, вы в сети. ваш портал LMS в вашем портале LMS на справа, когда вы нажмете [46:35] Самостоятельное обучение здесь С правой стороны вы найдете нас... Найдите вертикальную карточку меню. Хорошо в вашем Вертикальное меню позволяет увидеть все можно увидеть все уроки, которые мы изучаем Собираюсь покрыть. Хорошо. Как видите, [46:49] Мы сейчас это обсудим. Сначала у нас будет вводная часть, а затем мы начнём. работа с базой данных и таблицами В рамках этого мы также собираемся пойти дальше. посредством различных типов команд вы Здесь можно увидеть, а затем мы посмотрим, как это сделать. [47:01] работать с ограничениями операторов и всё остальное. Так что их много... Здесь всё определено. Мы рассмотрим следующие темы и подтемы. Первый здесь – первый здесь Это можно посмотреть в слайдах преподавателя. Эти [47:14] Все ли презентации PowerPoint вы увидите? Загрузка осуществляется с помощью инструмента "in" в классе. Затем Что представляют собой эти два типа практики? Здесь, в первую очередь, у нас есть практический проект. А затем у нас здесь предлагаются управляемые практические занятия. У вас также есть демоверсии. Верно? Что такое [47:31] Эти демоверсии? Вот эти демоверсии. которые используются внутри слайдов. Итак, когда обратите внимание, что они делают что-то небольшое. действия внутри слайдов и там [47:43] Там написано несколько запросов. Скоро что именно на уроке, который Напишите этот запрос, и можете смело приступать. Найти это можно здесь. Теперь вы получили руководство. Здесь находятся папки для тренировок. Практика под руководством преподавателя Вам выдаются папки с материалами по каждому уроку. [47:57] Практические проекты, которые вы здесь видите. Это... это проекты Завершающий проект урока. Итак, как только весь ваш Урок завершен, например, у вас есть узнал обо всех этих небольших командах Я всё ещё здесь, так что урок второй. [48:10] почти всё из этого урока номер два, так что это проекты. Что содержат эти папки? В папках находятся PDF-файлы и два PDF-файла. [48:22] Проблема в том, что файлы сначала должны быть на месте. утверждение и другое является решением для это решение состоит в следующем: скриншоты и пояснения к ним Теперь выполните запрос к любому набору данных. используется в любом из этих наборов проектов. Это [48:35] папка. Внутри папки с набором данных вы находитесь найду три вещи, три папки внутри него. Один набор данных для демонстрационные примеры, один набор данных для практических занятий с инструктором. Это ваши справочные материалы. каждый. Теперь я хотел бы, чтобы вы все... [48:49] Нажмите на ссылку «Онлайн-занятия». Когда вы нажимаете на Здесь вы можете посмотреть онлайн-занятия, перейдя по ссылке. Здесь вы можете посмотреть онлайн-занятия, перейдя по ссылке. Здесь проводятся онлайн-занятия, у вас есть... Вот эта коробка прямо сейчас с сегодняшней датой. Пожалуйста, нажмите на это поле. [49:02] Когда вы нажмете на это поле, вы... Здесь вы найдете материалы для занятий. и вы увидите список сессий. Здесь находятся материалы. Вы увидите несколько PDF-файлов. ссылки, которые вы просматриваете, у вас есть перейти к эпсилону или трем точкам [49:15] скопируйте его туда и вставьте. следующий браузер. Итак, материалы занятия и вещи. Материалы занятия представляют собой Материалы интерактивной сессии. Кем бы мы ни были использовать здесь в прямой трансляции что бы я ни решил в прямом эфире [49:29] сессия. Теперь материалы для занятия будут размещены. и дальше выясняется, что есть PDF-файл. Одна для Mac OS, другая для Windows. В любое время Мы говорим о данных, все хорошо? Допустим, теперь мы поговорим о моем SQL-запросе. Здесь присутствует Майра, когда мы говорим о СУБД. [49:42] Здесь база данных состоит из трех частей. сущности, или, можно сказать, три компонента. Какие три компонента входят в состав? Хорошо, один из них. это будет оборудование, одно из которых будет это данные, которые мы сохраняем внутри этого оборудование, а затем нам понадобится [49:56] приложение для доступа к любым объектам Мы сохранили это внутри, так что если вы поговорите Мы сохранили это внутри, так что если вы поговорите примерно вот так, так что у нас есть программное обеспечение аппаратное обеспечение и данные. Теперь эти три компонента [50:09] требуется контейнер, физический контейнер, представляющий собой оборудование, прикладная программа, программное обеспечение прикладная программа, которая нам поможет для подключения к оборудованию и сохранять данные внутри. Эти три компонента [50:22] также имеют три типа пользователей в зависимости от препятствие для данных означает, э-э, понимание данных Препятствия как уровень безопасности. Так кто же Какой уровень доступа к базе данных у него есть? отдельные таблицы данных? От первого лица Вот конечный пользователь. Кто конец? [50:37] Пользователь на сервере? Конечный пользователь — это человек. кто имеет доступ к данным в соответствии с должностные обязанности. Их главная задача — добыча обрабатывайте данные и создавайте отчеты. Они будут использовать процесс минимального кодирования и Их единственная задача — извлечение данных. [50:52] данные, а затем переходим к другим приложения. Это конечные пользователи. они работа с внешним видом или как конечный пользователь на уровне приложения. Затем Вторые здесь — это приложения. программисты-разработчики для тех, кто мы есть [51:06] Сегодня их называют инженерами данных, не так ли? Мы называем их инженерами по обработке данных. Что делать Эти люди так делают? Это те самые люди. кто будет взаимодействовать с данными напрямую. Это те люди, которые будут решить, как получить данные внутри этого... [51:21] конкретный сервер. Как какой э-э Нужно ли создавать эти отношения? Что Какие данные следует хранить? Какой вид Какую модель следует создать? Так какого рода Схема должна быть там? Это всё. Решение принимает программист приложения. [51:34] Этот программист приложений получил Это никак не связано с анализом данных. Они больше обеспокоены тем, как обрабатываются данные. управляется и защищается внутри программного обеспечения. [51:46] Теперь речь идёт о третьем лице. Сюда входит база данных. администратор. Это тенденция в Вся структура здесь потому что это это человек, ответственный за техническое обслуживание, работоспособность, восстановление [52:01] весь этот связь. Это означает, что сеть должна Работает как надо, верно? Так должно быть работоспособен. Таким образом, конечные пользователи могут продолжать. а затем получить к ним доступ и извлечь данные. набор. К тому же, это тот человек, который... [52:13] Предоставить пользователю доступ к инструкциям. Этот человек будет контролировать всё. доступ к данным. Итак, согласно правилам работы всякий раз, когда возникает необходимость, вы сохраняете запросите данные, и они их предоставят. либо они предоставят вам набор данных, либо предоставят [52:28] вам доступ к этой части база данных. Эти люди работают над внутренними процессами. уровень. Эти люди работают над внутренними процессами. уровень или физический уровень, создающий идентификатор пользователя пароли, предоставляющие и заменяющие там такой высокий уровень безопасности. Итак, это они. [52:44] Здесь три типа пользователей. Итак, что же нам теперь делать? Какой тип курса мы проходим? каждый? Речь идет об анализе. из набора данных. Вся эта программа занимается анализом данных набор. Вам предстоит проанализировать данные. [52:57] набор. Так что либо вы аналитик данных, либо Вы — бизнес-аналитик, или вы им станете. Переходим к науке о данных. Любой из эти три, что бы ни было вашим предстоящим эти три, что бы ни было вашим предстоящим путь туда. Да. Так кто же вы? Который [53:10] Вы пользователь? Один, два или три. Они являются первыми пользователями. Я не понимаю, почему вы не уверены. Может быть Вы – опытный профессионал. прямо там. Хорошо. И вы работали в рамках смешанных должностных обязанностей. Вот почему [53:24] куда ты собираешься отправиться и где окажешься в итоге. Так если вы из сферы программирования работа с API и подключение множественные порталы и извлечение данных внутри сервера, тогда вы окажетесь Работаешь инженером по обработке данных, верно? [53:39] Однако, когда вы присоединитесь, вы станете членом команды. аналитик данных, у вас не будет вообще никакого доступа к SQL. Если только вы не присоединяясь к ним в течение 10-15 лет у вас будет доступ ко всему Три уровня, верно? Но э-э, те, кто [53:53] вы учитесь впервые, и вы Если у вас нет опыта, вы будете работая только с анализом и быть Здесь происходит извлечение данных. Хорошо. Не тот Вся команда будет иметь к нему доступ. или любой, кто присоединится к нам в качестве аналитика данных. [54:06] после этой программы. Они тоже нет у нас будет доступ, чтобы убедиться, что данные будут получены, если только да, они присоединиться к работе, где они находятся предполагается изменить доступ и убедиться Данные там хранятся надлежащим образом. Итак, теперь это [54:21] Зависит от того, на какую должность вы претендуете, но да. Как аналитик данных, вы должны знать о следующем: Здесь две вещи. Во-первых, вот что здесь... как... аналитик данных — ваш первый шаг всегда к собрать данные. Сначала нужно... выяснить в соответствии с целью, хорошо? [54:35] Какие таблицы данных необходимы и из чего они получены? Откуда вы собираетесь взять эти данные? таблицы и необходимые данные. Теперь это возможно. поступают с одного сервера или с нескольких разные источники. После этого будет сделано Номер вашего шага будет таким: а теперь идите. [54:47] Перед этим проанализируйте свой набор данных. Может быть Вы импортируете его в PowerBI. Возможно, вы в Tableau. Возможно, вам нужны эти данные. CSV-файл. Вы продолжите анализировать. с помощью Excel. Итак, приступайте к анализу. и создайте свои отчеты, а в конце [55:00] Конечно, вы же не создаёте отчёты для... Сохраните это у нас. Итак, мы продолжаем и Поделитесь отчетами с другими. Мы уходим и представить их специалистам по управлению бизнес-процессами, таким как человек, принимающий решения. Это менеджеры бизнес-процессов. Однако, [55:13] Хорошо, если вы абсолютный новичок. Без опыта работы, хорошо, вы можете... идите вперед, на уровень где вы будете писать SQL-запросы Запросы, хорошо, нужно извлечь данные, верно? отсюда или, возможно, вас попросят [55:26] оказывать помощь в обновлении и изменении данные, если вам их предоставили разрешение. Обычно это не предоставляется. Давайте поговорим о нашем SQL. Теперь я говорю об операциях SQL. Давайте поговорим Речь идёт об операциях SQL, верно? э-э, SQL [55:41] операции здесь. Что является первым делом? Чему мы здесь научимся? SQL-операции Чему мы здесь научимся? SQL-операции Это может помочь нам сделать четыре вещи. Что мы узнали об этих четырех четырех Помните, что там происходило? Что это были за четыре вещи? [55:53] Что могут делать операции SQL? Какие именно четыре операции были проведены? Итак, сначала То, что мы здесь видим, это то, что... давайте поговорим. Подробнее читайте здесь. Творите, мы понимаем. Хорошо, создадим базу данных. Мы создаём стол. Хорошо, всё в порядке. Давайте [56:07] Понимаете, что значит «читать», верно? Давайте Понимать, что значит читать. Что прочитано — это Что вы собираетесь сделать? «Читать» — это, э-э, «читать» здесь. это поможет нам получить или извлечь данные из таблиц данных или набор данных или подмножество данных. Хорошо. От [56:21] таблица внутри базы данных. Пока получение этих данных здесь, в то время как для получения данных здесь нам может понадобиться Давайте, э-э, применим фильтр. для просмотра набора маркетинговых данных. Только Хотите посмотреть данные за последние шесть месяцев? [56:36] набор. Это значит, что мы можем приступить к реализации. Мне нужно отфильтровать данные из Первое, что нужно сделать, это посмотреть на строки справа. Во-вторых, возможно, я хочу, а я не хочу Возможно, мне стоит пойти по всем этим колоннам. и, э-э, оставьте только те столбцы, которые [56:50] нам нужно прямо сейчас, э-э, сейчас, после извлекая его или во время извлечения мы Данные за последние 6 месяцев необходимо отсортировать. в надлежащем временном ряду или в надлежащем столбец с датой, чтобы мы могли продолжить сортировку. Данные тоже иногда попадают в систему во время сортировки. [57:05] Данные в порядке. Допустим, у меня есть данные. Здесь, у кассиров. Так что же это за вид Какие данные у нас здесь есть? У нас есть... Идентификатор клиента, какой у него товар. купил(а), какая дата и время, что сумма, которую они заплатили, любого рода... [57:19] Купоны были там, или карты были Там, где у нас было, они этим пользовались. Таким образом, имеющиеся у меня данные — это только объем продаж. данные о сумме. Если хотите, можете продолжить. Эмм, я хочу рассчитать там прибыль. Хочу рассчитать, какой там был доход. [57:32] Если нам понадобятся дополнительные расчеты, мы... Можно добавить и это. Так что, если вы В этой колонке мы можем это сделать. Если вы хотите В совокупности мы можем это сделать любым доступным способом. Любые математические вычисления Это возможно, и не только математически. [57:46] расчеты, мы также можем продолжить и работа с условными или логическими условиями тоже заявления. Вот что мы можем сделать. делать с чтением и многим другим. Итак, мы можем идти вперед, добавить, рассчитать и агрегировать данные тоже. Возможно, я просто хочу увидеть. [58:00] общий объем продаж по какой-либо стране, общий объем продаж побочный продукт. Мы можем смело приступать к созданию а также сводные отчеты. Теперь, когда мы Здесь речь пойдёт о создании чего-либо. Все в порядке. Так создать базы данных. Мы создаём данные таблицы. Мы вставляем записи данных внутрь [58:14] это. Хорошо. И поскольку мы создали Этими вещами нам тоже нужно управлять. Обновите таблицу, все содержащиеся в ней данные. это. Нам могут понадобиться все данные. Теперь к выполнить все эти операции здесь, чтобы сделать, э-э, Все эти операции нам необходимо выполнить здесь. [58:28] Какие-то команды, верно? Словарный запас. Я Я же говорил, что будут ключевые слова и Команды и лексика там, потому что это внутри структурированный язык. Итак, чтобы сделать все это Какие типы команд здесь указаны? заявлений, над которыми мы будем работать [58:41] на? Какие бывают типы утверждений? Группы команд или типы операторов для запишите эти операции и мы называем их запросами данных DQL. язык. Здесь используется язык запросов данных. Так выбранные утверждения, которые вы [58:54] Видите, да? То есть то есть Здесь имелся в виду язык запросов. Правильный? Сейчас Это язык запросов к данным. Это значит ключевые слова, используемые для запросов «Э-э», используется для запроса. Второй вариант — данные. Язык определения DDL. Что это такое? [59:09] Здесь приведено определение? Мы определяем структура базы данных или схема. Что мы Что вы здесь делаете? Мы определяем базу данных структура или схема. То есть, сколько количество столбцов, которые у нас есть, как что Какой тип данных у каждого столбца? Что [59:22] своего рода ограничение, которое нам приходится устанавливать. Тебе это нравится? Это свидание? Какой вид формат? Верно? это определение данных язык. Да, верно. Например, создать таблица, изменить структуру таблицы, Удалите весь столбец "uh" из [59:37] существование и многое другое. Третий здесь — ДМЛ. Да, очень хорошо. Третий вариант — DML. Что здесь означает DML? манипулирование данными язык. Что такое манипуляция? Подойдет ли язык? Это поможет нам вставить данные, обновить строки, удалить [59:51] вставить данные, обновить строки, удалить Возможно, стоит объединить данные в одной строке. Это манипуляция. Третий здесь — DCL. Да, очень хорошо. Спасибо. DCL — это данные язык управления. Что представляют собой данные? Здесь используется управляющий язык? Этот контроль данных [01:00:06] язык поможет нам дать доступ к людям, предоставление разрешений, отзывать разрешения и тому подобное. Это обычно используется данными. Человек, который предполагается предоставить разрешения, получить Идентификаторы пользователей для всех остальных. Это DCL. [01:00:21] Затем у нас есть еще один магазин — TCL. TCL — это язык управления транзакциями. Зачем здесь нужен транзакционный контроль? Что такое сделка? Хорошо, вот суть сделки. вы пытаетесь обновить базовый объект. данные. Вы пытаетесь изменить или удалить [01:00:36] удалить столбец или несколько строк здесь, или вы Хочу добавить туда еще несколько строк, и это Это делается не одним человеком. Этот Сделано всей командой. Таким образом, вся команда Проверьте, как у них дела. Они это делают? [01:00:50] Какие бы изменения они ни внесли, это Правильно это или нет. Поэтому, выполняя эти действия, своего рода транзакционные запросы, хорошо, они Используйте TCL с этим, и вот, например, вот это: Вот несколько примеров, например, сохранение/бросок кубика. Вернитесь назад и подтвердите, когда накопите необходимую сумму. [01:01:04] В этот момент вы должны быть готовы управлять Z. Отмените это, то есть откатите назад, или Полностью воплотите в жизнь те изменения, которые это означает. обновить все данные, которые мы правильно сделали какие бы изменения они там ни внесли это язык управления транзакциями TCL. [01:01:18] инженеры — это те, кто поддержание всего набора данных в этом месте. Итак, вот типы команд. Наше основное внимание будет сосредоточено именно здесь. Наш Основное внимание будет уделено именно этому. Хорошо. Эм-м-м [01:01:32] Я могу показать вам несколько примеров. конец. Возможно, я вам что-нибудь предоставлю. Примеры здесь. Но наше основное внимание сосредоточено на Буду здесь. Просто к вашему сведению. верно? Итак, это группы командования. здесь. У вас уже должна быть установлена ​​Microsoft. [01:01:44] Выбраны окна. Да. После того, как у вас будет установлена ​​операционная система Microsoft Windows, вы сможете её установить. Выберите здесь, нажмите на кнопку. Выберите здесь, нажмите на кнопку. скачать. Выберите первый вариант здесь. [01:01:56] Выберите первый вариант здесь. После того, как вы выберете первый вариант здесь, Теперь на этой странице вы должны нажать «Нет, спасибо». Затем начни мой скачать. Итак, тот, что здесь с 2 МБ, мы Я скачаю именно этот файл. [01:02:13] скачайте, и тогда вы сможете увидеть все следующее. Шаги здесь. Этот пост создан специально для этого проекта. Вы получаете сервер здесь. В сообщении говорится, что они предоставляют очень Здесь приведены хорошие инструкции. Вы должны Нажмите на знак плюса. Тогда... вы... [01:02:26] имеют Все версии расширены. Затем удвойте Нажмите сюда. Нажмите сюда. Вперёд! правая сторона здесь. Затем найдите верстак. Следуйте тем же инструкциям. Здесь всё написано как положено. [01:02:39] Как только вы пройдете через это. Здесь вы найдете все, что угодно. коробка. Это увидят лишь немногие из вас, немногие из вас. Вы не увидите диалоговое окно. Итак, и Вас это вполне устраивает. Хорошо. Итак, вы нужно нажать на знак плюса и получить [01:02:53] верстак и сервер на правая сторона. После этого Здесь, друзья, вам нужно просто кликнуть. здесь знак плюса, как вы видите, здесь знак плюса, как вы видите, четко. [01:03:07] Здесь всё должным образом представлено. Так, Мино и все остальные просто следуют указаниям. Инструкции здесь. Это действительно хорошо. PDF. Это проведет вас через весь шаги. Если вы столкнетесь с какими-либо трудностями, вы дайте мне знать. Итак, плюс плюс плюс на [01:03:20] Затем, когда вы увидите список серверов, Выберите первый вариант и нажмите на него. Выберите первый вариант и нажмите на него. зелёная стрелка. Теперь нажмите на минус. Затем мы нажимаем на кнопку «плюс» на рабочем столе. снова. [01:03:35] Затем список версий Появится верстак, и вы получите Здесь тоже есть верстак. После получения этих Здесь два пункта, нажимаем «Далее». И после Ладно, продолжайте нажимать "Далее". Это На выполнение потребуется некоторое время. [01:03:49] В некоторых из ваших версий, если вы используете В Windows 10 вас могут попросить установить... Здесь есть визуальные материалы. Визуализация от Microsoft здесь. Согласитесь с условиями и положениями и Установите его. После установки просто Продолжайте нажимать кнопку «Далее», пока не дойдете до... [01:04:02] Пароль там. Пока вы не двинетесь вперёд и найти пароль. Пожалуйста, сообщите мне пароль. Поясню вам. Этот пароль... э-э... не... Простой пароль для восстановления. Это Приложение с открытым исходным кодом для всех. Итак, [01:04:17] Пожалуйста, сделайте пароль root максимально простым. Хорошо, это должно остаться у вас в памяти. Запишите это где-нибудь. Запишите это где-то. Если вы думаете, что сможете Запомни это, хорошо? Ты можешь... э-э, это не так. Запомнить это возможно. Я бы [01:04:32] Запомнить это возможно. Я бы предлагаю выбрать 1 2 3 4 ab cd d или э-э, четвертью такие пароли чтобы вы могли запомнить, ничего нет Сохраните и защитите данные здесь. Хорошо. Так что продолжайте [01:04:44] Ваш пароль root очень прост. возможный. Так что, если вы... потому что это Это не просто нажатие на кнопку «Забыли пароль». Вы получаете одноразовый пароль (OTP), и он сбрасывается. Это даже забыть пароль root Удаление и повторная установка не произведут никаких изменений. [01:04:57] помочь вам. Вам нужно зайти внутрь и затем измените это и обновите. Вы не можете Восстановите его. Поэтому убедитесь, что когда вы Получить доступ к паролю root очень просто. и запоминающийся. Хорошо. В этом приветствии [01:05:10] экран, все, мы можем видеть местные новости пример. Хорошо. Итак, давайте приступим. Нажмите здесь на локальный экземпляр. Этот местный Например, когда вы нажимаете на Здесь находится локальный экземпляр, он перенаправит вас на верстак. Что такое верстак? Здесь [01:05:23] что мы можем приступить к доступу к сервер. Когда вы нажимаете на локальный В данном случае, это ваш интерфейс. Изучу этот вопрос. Итак, у нас есть... Здесь почти четыре квадранта. Все в В первом квадранте вы найдете себя. [01:05:36] Здесь есть схема. Возможно, вы не такой. рассматривая схемы. Возможно, вы рассмотрение административного управления так. Да. Итак, с левой стороны Здесь вы найдете свой навигатор. Здесь руководство. А чуть выше этого [01:05:50] Обратите внимание: здесь вы найдете быстрый доступ. панель инструментов. Выше этого у вас есть выпадающее меню, панель инструментов, и вот что у нас есть. вкладка «Главная» и вкладка «Локальный экземпляр» прямо там. Что это за вкладка «Главная»? Вкладка "Локальный экземпляр"? Если вы пойдёте, вот это. [01:06:03] приветственный экран и возвращение в локальную сеть пример. Может быть много подобных случаев. Откройте здесь отдельно. Теперь мы внутри В навигаторе мы видим экземпляр управления. Здесь представлены варианты. Здесь вы также найдете Найдите опцию, которая называется «схема». [01:06:18] Пожалуйста, нажмите на схемы. В этих схемы, вы видите цилиндр прямо сейчас? сейчас? Цилиндрическая конструкция... меню. Пожалуйста, нажмите сюда. Теперь ваша очередь Щелкните по локальному экземпляру. Введите ваш Введите пароль, и вы попадете сюда. Так [01:06:33] Теперь давайте рассмотрим интерфейс. здесь. Хорошо. Хорошо. Итак, как мы это делаем сейчас. Мы видим этот контейнер, все? Я надеюсь Да, это так. Этот контейнер — наша база данных. Что это? Этот контейнер — наш. база данных. Но что здесь написано? Это [01:06:47] говорит, что это схема. Правильный? Так что в Давайте поговорим о MySQL. прямо сейчас. Что такое база данных в MySQL? В MySQL данные — это база данных, термин база данных, хорошо, она будет эквивалентно или синонимично схемам. [01:07:03] Теперь мы понимаем, что такое база данных. верно? Система хранения. Но что я... Я пытаюсь сказать вам вот что: вы Необходимость в этой схеме и базе данных заключается в следующем: Синонимы и MySQL, верно? Так что в База данных MySQL реализована как [01:07:17] каталог, содержащий все файлы которые соответствуют таблицам база данных. Мы можем, если хотите. создать базу данных внутри базы данных MySQL в порядке, вам требуется прав администратора. привилегии администратора доступ без прав администратора [01:07:32] привилегии администратора доступ без прав администратора доступ, который вам не разрешено создавать Вам не разрешено создавать база данных или таблицы и термин Схема и базы данных являются синонимами в В MySQL мы можем скопировать [01:07:45] и клонировать функции базы данных, которые мы можем храните резервную копию копии существующая база данных плюс мы также можем это также включает структуру таблицы и лот множество свойств, таких как индексы, ограничения и значения. По мере нашего движения [01:08:00] и терминологию тоже. Теперь внутри В базе данных есть одна вещь, которая В базе данных есть одна вещь, которая Мы все должны об этом знать. Что такое что? Во время работы с базой данных, Хорошо, есть такое понятие, как актив. [01:08:13] свойства базы данных. Это Здесь происходит нечто очень-очень важное. Здесь представлены свойства активов базы данных. транзакции обеспечивают нам надежное управление Послушайте это очень-очень внимательно. Этот Это то, о чём часто спрашивают в [01:08:28] Здесь проходит собеседование, и это кое-что. вы должны понимать, как Всё работает. Итак, есть четыре вещи. здесь атоция [прокашливается] консистенция Здесь царит враждебность? Давайте разберемся в этом с помощью [01:08:42] экзамен. Хорошо. Здесь написано следующее: Я гарантирую, что эти транзакции выполняются. по принципу «всё или ничего». Верно? Итак, пусть Приведу пример. Это когда-нибудь случалось? случилось с вами такое, что вы заплатили вы оплатили онлайн за [01:08:55] что-то, и они говорят, что это ваш транзакция не удалась, или если вы перейдете Оплатите онлайн, хорошо? Сумма транзакции списана с вашего счета. [01:09:08] они ведут учет, но говорят, что это не отражено. но с их стороны. А если во второй половине час это не отражает того, что они будут убедитесь, что транзакция не состоится Сталкивались ли мы когда-нибудь с подобными ситуациями? Да Или нет? Да. Это означает атмосферность. [01:09:23] либо сделка состоится или же это не займет времени. Место вообще не будет, но его не оставят в посередине все в порядке, мы обновили Некоторые ряды в порядке, а некоторые только половина ряда. Обновление пришло, а второй половины там не было. Это [01:09:37] Так это не сработает. То есть атмосферность. Это позволяет разработчикам сосредоточьтесь на логике приложения, а не на сбои, а также восстановление сложность окружающей среды. Хорошо. Эм-м-м Это тоже легко сделать. И все из [01:09:53] Вот это, вот это, это исключительно интересует вопрос о том, как база данных восстанавливается. от любых сбоев, от любых транзакций или сбой системы, который может произойти во время процесс или обновление данных набор. И все базы данных, которые мы видим [01:10:06] Здесь представлены активы, соответствующие установленным требованиям. Это гарантирует, что только сделки, которые были полностью Успешное завершение процесса будет обработано. Если Сбой происходит до обновления. что-то, если сбой произойдет раньше Э-э, транзакция завершена, данные [01:10:21] Изменения внесены не будут. Например, я Хочу продолжить, исходя из... Хочу продолжить, исходя из... кредитный лимит человека, я хочу, мы хотим чтобы посмотреть, какая кредитная карта подойдет карты, на получение которых они имеют право. так что, э-э, мы [01:10:34] Можете смело им позвонить и... связывайте их с ними по электронной почте, которая Пожалуйста, подключитесь к нему. Итак, чего мы хотим? Мы хотим внести эти изменения? база данных и аккорд, и мы хотим добавить [01:10:48] Вот эта кредитная карта. Да. И мы пошли и мы придерживались этой логики. Если условия выполнены, этот человек должен быть имеют право на получение этих кредитных карт, и мы [01:11:00] Хотите создать формулу? для этого. Но когда мы создаём формулу Здесь либо это будет реализовано, либо нет. рассчитать для каждого человека или идентификатор клиента, указанный там, или он будет Даже не добавляйте эти данные туда. То есть [01:11:14] Всё или ничего. Всё или ничего означает либо сделка состоится, либо нет Этого не произойдёт. Верно? Итак, самый простой Примером того, о чем мы говорили с Али, является... Примером того, о чем мы говорили с Али, является... Когда вы платите онлайн, хорошо, и ваш... [01:11:26] Сумма списана с вашего счета, но Они говорят, что мы не получили ваш сумма еще и в течение следующих получаса, если Если вы его не получите, мы... э-э... эту сумму вам вернут. система. Так что это либо всё, либо ничего. [01:11:38] Потому что это пример атмосферности. Я не утверждаю, что именно так работают базы данных. работает. База данных работает так, как я хочу добавить. В столбце что-то происходит или возникает ошибка оказывается посередине. Все в порядке. Это не Собираюсь обновить его в середине процесса. [01:11:50] через. Обновление не состоится. Вся колонка целиком. Если только... э-э, это можно смело обновлять каждый из них. строка в этой базе данных. Это не Добавлю этот столбец. Так что это атмосферность. Что здесь подразумевается под последовательностью? [01:12:03] Последовательность — это просто. Хорошо. Это поддерживает транзакцию. Оно поддерживает что транзакция следует определенному набору условий правила. Что же здесь подразумевается под последовательностью? Последовательность здесь означает, что она сохраняется. транзакция, и за ней следует ряд действий. [01:12:16] правила. То есть, если мы собираемся уйти и вносить изменения в любую базу данных в рамках Сама команда, мы приступим к работе. Некоторые правила, хорошо? Как это работает? и каков набор правил, которые мы Все должны следовать указаниям. [01:12:31] там. Таким образом, это становится очень важно в рамках обеспечения согласованности, как Последовательность будет сохранена. Если вы Знайте, что если мы захотим пойти... Весь процесс сохраняется сразу, если вы хотите это изменить или хотите внести изменения [01:12:43] вы хотите внести изменения или обновить база данных, поэтому все будет согласованные данные должны быть всегда действительный. Итак, если я использую здесь дату, то... DDM по таким данным будет выглядеть точно так же, как что это и есть последовательность. Например: [01:12:59] как только вы переведете деньги кому-либо сразу после перевода денег на сразу после перевода денег на Что происходит с банковским балансом? останется неизменным независимо от транзакций. Вы уже рассчитали остаток на банковском счете или общую сумму. [01:13:11] Остаток на банковском счете останется неизменным. Итак, если Вы дали кому-то 1000 рупий. Это позволит вычесть всего 1000 рупий. автоматически это просто не произойдет Измените данные там, если только вы этого не хотите. Совершите транзакцию. Таким образом, это поддерживает [01:13:23] Последовательность в этом вопросе. Вот и всё. последовательность. Поэтому данные всегда должны быть Действительно независимо от правил базы данных. являются. Если правила базы данных и Если установлены ограничения, то всё пойдёт своим чередом. и следуйте этим правилам и данным. [01:13:35] проверки и типы данных и другие ограничения и препятствия тоже. Это последовательность. Третий год – это изоляция. Изоляция — довольно интересное явление. Это гарантирует, что транзакции не повлияют друг друга. Что это значит? Это [01:13:49] это означает, что каждая транзакция будет совершена. независимо друг от друга, не вмешиваясь друг в друга другой. Например, если я собираюсь а затем добавить столбец, а затем другой столбец, столбец будет удален отдельно. Они не повлияют [01:14:04] друг друга. Пример в реальном времени для Например, есть два человека. Хорошо, два. разделять людей, которые переводят деньги в то же время. А вы так думаете? их очень много, их много. перевод денег внутри одного банка [01:14:19] в то же время. Это произойдет? Исправлять ли друг друга в работе? Является Это приведет к перемешанию количеств или Банковские реквизиты? Нет. Почему? Потому что они изолированные транзакции. Они произойдут независимо для них. Вот и всё. [01:14:34] база данных также была учтена. и мы работаем в рамках этого. Вот и всё. изоляция. Так что, если вы занимаетесь каким-либо видом деятельности обновление, изменение, добавление данные, удаление данных или добавление столбцы, удаление столбцов или любые другие [01:14:48] вычисления внутри него или создание отношения или что-либо еще, без исключения Выписка по транзакции будет отдельной. и изолированный. Теперь следующий за четвёртым Один из них – долговечность. Что такое долговечность? здесь? Долговечность гарантирует, что написанное [01:15:02] Данные не будут потеряны. Таким образом, долговечность говорит, что все в порядке, как только транзакция будет завершена. обязуемся это сделать, как только завершим этот процесс. и мы взяли на себя обязательство, что тогда это произойдет останутся даже в случае отключения электроэнергии или... что бы ни случилось, всё рушится, но как только [01:15:18] Добавил столбец, добавил общий. значения, а после этого, даже если, э-э, Отключение электроэнергии или сбой сервера данные останутся в пределах этой зоны конкретный сервер. Поэтому, когда вы переключаетесь Хорошо, если вы выключите ноутбук, данные всё равно останутся. [01:15:34] оставаться там. Так что это что-то вроде что. Вот что такое долговечность. Итак, для например, когда вы кому-то платите и на вашем экране это отображается следующим образом Передача данных на экран прошла успешно. Так когда отображается сообщение об успешной передаче [01:15:47] и тысяча рупий уходит из Ваш аккаунт, который будет действовать постоянно. Не могли бы вы Вы сами это исправите? Хорошо. Как только запись будет создана там, она будет созданный. Мы не можем это изменить. Так что это долговечность, которая достигается после совершения транзакции [01:16:01] Сделка будет завершена. какие бы изменения это ни внесло эти Изменения также будут окончательно утверждены. Так что Это свойства активов баз данных, это... и все базы данных должны быть удалены Перейдите по этой ссылке, чтобы ознакомиться с этими свойствами. Итак, в [01:16:14] полная система учета активов база данных двигатель гарантирует, что синхронный предпочтительнее физического носителя. Так По сути, мы пытаемся сказать следующее: во всей этой системе активов прямо здесь. мы, инженеры данных, в основном те, кто [01:16:30] поддерживая набор данных, они будут следовать то же самое, и он разработан на основе эти четыре объекта недвижимости. Теперь у нас есть Обсудили базу данных и схему. синоним в MySQL. Так мы и сделаем Теперь давайте посмотрим, как мы можем продолжить и увидеть кое-что. [01:16:46] Теперь давайте посмотрим, как мы можем продолжить и увидеть кое-что. очень небольшое количество ключевых слов, когда инструкции даются в соответствии с правом на Например, я дам инструкции для SQL. существующая таблица. оно продолжит добавлять Колонка, верно? Потому что я единственный пользователь. [01:17:01] но как будто я единственный пользователь, похожий на меня в команде несколько пользователей Возможно, каждый делает свою работу. Я обновляю набор данных о клиентах. Ещё один вопрос — информирование сотрудников. Набор данных в порядке, значит, если я даю [01:17:14] Инструкции по добавлению столбца: добавьте столбец. данные, которые предоставляет и другой человек Те же инструкции для другого стола, но в пределах одного и того же сервера эти инструкции или транзакции не Они не будут влиять друг на друга. [01:17:26] Я говорю, что все перемешается. клиент, создайте столбец по адресу Перейдите в раздел "Сотрудники" и обновите строки. ничто не повлияет на каждого. чужие сделки здесь вообще или нет Очень простой пример: когда вы идете к банкомату [01:17:42] два человека одновременно принимают Что это значит, если деньги сняты с банкомата? Вы печатаете 5k, другой человек пишет 10k. внезапно транзакция запуталась и вы получите 10 тысяч от этого человека. Такое бывает? Нет, это не так. [01:17:55] изоляция, которая, даже несмотря на то, что двое более В этом занятии работает несколько человек. Та же система, верно? Они не собираются... Влияют друг на друга, верно? Так что давайте начнём! Продолжим изучение схем и... как здесь писать синтаксис и что [01:18:08] что означают эти синтаксис и параметры? Мы увидим здесь двоих сейчас, когда мы скажем, база данных здесь, так что есть Три типа схем баз данных, а что дальше? Эти схемы являются базовыми или логическими, и Здесь, однако, речь идет о физической схеме. [01:18:22] Сначала нам нужно разобраться со схемами, представленными здесь. Давайте разберемся в моем SQL-графике. тема пользовательского интерфейса и запустить некоторые там задают вопросы. Тогда мы придем сюда и Как уже было видно, это основные моменты. Типы команд там. Итак, начнём. [01:18:36] Типы команд там. Итак, начнём. Впереди посмотрим. А вот это... вот это схема. Мы установили, что там Здесь мы пишем наши запросы. Этот определённая часть также имеет быстрый панель инструментов доступа. Все справа [01:18:49] С правой стороны находится раздел помощи. Хорошо, что это? Это помощь. раздел, и именно здесь мы видим Действие завершено. Какой результат действия? здесь? Какой бы запрос мы здесь ни ввели. Хорошо. Когда мы это выполним, тогда... [01:19:03] время выполнения какое действие или какой запрос был казнен, каковы были последствия этого? Выполнение и какова его продолжительность Результат выполнения этого действия будет здесь. Верно? Итак, давайте начнём, давайте начнём. и э-э, сначала узнайте здесь, как нам это сделать. [01:19:19] Введите что-нибудь сюда. Итак, первое, что нужно сделать У нас здесь есть какая-нибудь база данных? Нет, мы этого не делаем. Есть ли здесь какая-нибудь база данных? Итак, давайте понять, как двигаться дальше, и сначала Оставьте комментарий, и тогда мы посмотрим, как это сделать. Получить набор данных можно здесь. Итак, первое, что мы [01:19:32] всегда буду помнить базу данных и В данном контексте термин «схема» будет использоваться как синоним. MySQL и нигде больше. Как нам добавить комментарий в одну строку? Так что, если мы, э-э, если мы Введите здесь знак фунта или хэштег, который вы используете, мы можем добавить. [01:19:45] комментарий в одну строку, либо мы можем пойти или мы можем продолжить и напишите два знака минус или дефис и букву а Здесь место. Это также добавляет сингл. комментарий к строке. Что же здесь подразумевается под комментарием? И почему это важно? Однострочный [01:20:01] Комментарий здесь — это неисполняемая часть. Что это такое? Это неисполняемая часть. По сути, это описание какие бы коды и запросы вы ни задавали Пишу здесь. Но что вы делаете? Над чем вы работаете? Так что, как угодно. [01:20:15] описание того и этого Это будет основной вопрос, но не каждый. когда мы сможем написать все Объяснение тоже в одной строке. Так Здесь у нас косая черта. и знак астры и знак топора и [01:20:29] косая черта. Итак, мы начинаем писать. так. Все в порядке. А если вы хотите многострочный коммит, который мы хотим записать в несколько строк справа. Поэтому нам приходится несколько строк справа. Поэтому нам приходится заключите их в эти здешние [01:20:45] косая черта и Итак, что мы хотим сделать? Мы хотим... нам нужно продолжить и получить база данных, верно? Нам нужно получить базу данных. системной базы данных у неё не будет. Есть ли там какие-нибудь столы или что-то подобное? [01:21:01] Подробности системы только справа, посмотрите, что Какие таблицы здесь есть в системе? Настройка нам не поможет. Итак, нам нужно получить доступ к базе данных. Как нам получить доступ к этой базе данных? Итак, мы Если у нас есть коды SQL, мы должны их иметь. [01:21:16] через который запрос цитирует через Какие данные создаются? Верно? Итак, а Какие данные создаются? Верно? Итак, а база данных создана здесь Или же мы можем использовать CSV-файл. Мы можем иметь CSV-файл, который мы можем импортировать сюда. [01:21:31] Хорошо. Итак, мы можем приступить к импорту. столы тоже. Итак, сначала мы увидим Вот как получить доступ к базе данных, используя... Курс по SQL прямо здесь, и как это сделать. Как нам двигаться дальше и создавать это? база данных. Итак, давайте поговорим о создании [01:21:46] база данных, что бы я здесь ни писал Хорошо, почти в режиме реального времени я это сделаю. Теперь и там тоже есть обновление, Excel довольно... прямой, извините, SQL довольно прямой, хорошо, если База данных, нам просто нужно взять и продолжить. В выпадающем списке напишите C, как вы увидите. [01:22:01] создать есть ли правильное, так что из В выпадающем меню можно нажать на вкладку, и Вы сможете там создать что-нибудь и зайти. вперед с мышкой там и э-э дважды щелкните по этому месту, и оно будет написано. там, и если вы это получаете в [01:22:14] Выберите ключевые слова из выпадающего списка. Теперь будет проще напечатать то, что мы Мы хотим здесь творить, мы хотим двигаться вперед. и создать базу данных, чтобы мы могли продолжить. Здесь мы сейчас создаём наш первый База данных здесь, так что я пойду. [01:22:29] вперед и назовите это здесь первым. база данных Можете назвать как угодно, вот так. Сначала создайте базу данных, а затем перейдите сюда. Сначала сосредоточьтесь на том, что я делаю, смотрите Когда мы здесь задаём вопросы по обучению. [01:22:44] Следуйте за мной. Смысл сначала э-э Посмотрите, что я показываю вам на экране. Верно? Я это выполню. Я покажу Куда вы это должны были выполнить? Как это сделать? Каков результат и куда он направляется? Является Внимание, пожалуйста, смотрите на экран. Ты можешь [01:22:56] Смотрите, я написал код для создания базы данных и Первая база данных здесь. А затем у меня есть Здесь стоит точка с запятой. Да. Что, почему делают? Нам это здесь нужно? Причина в том, что... Здесь точка с запятой завершает высказывание. [01:23:08] Здесь точка с запятой завершает высказывание. Это сообщает SQL-запросу. Вот, видите, здесь находится ваша команда или Инструкция прекращается. Правильный? Так что это Инструкция прекращается. Правильный? Так что это завершает это утверждение, что здесь здесь [01:23:21] Это заявление. Это единственное приказ, что вы должны двигаться вперед и выполнить прямо сейчас. Как же мне это выполнить? Эта команда здесь? Для выполнения Здесь находится команда, и вы можете либо продолжить. и нажмите Ctrl+Enter, то есть [01:23:33] Здесь можно использовать сочетание клавиш, или же перейти по ссылке. Здесь находится выпадающий список запросов, и посмотрите сначала. Если вы перейдете в выпадающее меню запроса, там будут следующие варианты: Здесь есть два варианта. Первый шаг — это переключение управления. Введите текст, то есть, он будет запущен. выполнить выбранное вами действие. Выбирать [01:23:47] означает правильный выбор. Это должно произойти Выделите это и вас выберут. В противном случае, выполнение продолжится. какие бы коды или запросы ни существовали внутри скрипта. Мы называем это скрипт. В противном случае, если вы хотите пойти [01:23:59] то, что у нас есть здесь прямо сейчас, где наш Курсор мигает, верно? То есть выполнить текущее выражение, которое Ctrl+Ввод. Мы также можем продолжить и Используйте их здесь. Хорошо. Итак, это первое молния, которую вы здесь видите, будет [01:24:14] молния, которую вы здесь видите, будет Выполните все или выбранные действия. Здесь выполняется текущее состояние, потому что Там есть курсор. Молния Наведение курсора выполнит текущий запрос. заявление, где бы вы ни хранили [01:24:26] курсор. Поскольку мы это делаем, мы Выполняю это здесь впервые. Хорошо, позвольте мне показать вам вот так. Итак, если Это утверждение, которое вы выбираете следующим образом. болт. Если вы хотите использовать второй молния, и мы только выполняем [01:24:39] всего одна строка, курсор можно оставить. здесь и исполнить с помощью молнии с помощью курсора или нажмите Ctrl+Enter. Итак, когда мы нажмем сюда, посмотрим, что произойдет. В выводе действий говорится следующее: зеленый знак, и мы создали [01:24:53] зеленый знак, и мы создали В базе данных здесь затронута одна строка справа, но даже когда это происходит Здесь мы можем что-нибудь увидеть? Здесь мы можем что-нибудь увидеть? А теперь перейдём к части, касающейся схемы? [01:25:05] А теперь перейдём к части, касающейся схемы? Нет. Поэтому нам нужно обновить страницу. Схема находится здесь. Итак, сначала мы продолжали наш курсор внутри. Мы это выполнили. верно. Теперь обновите страницу. схема. Итак, после обновления страницы [01:25:18] Здесь представлена ​​схема, по которой мы находим нашу базу данных. прямо там. Конечно, в данный момент это так. пустой. Хорошо, внутри ничего нет. это. После запуска исполняемого файла мы его выполняем. Хорошо, тогда посмотрим на результат. Здесь мы видим результат действия. Но если [01:25:31] Если вы хотите просмотреть схему, перейдите по ссылке. Здесь нам нужно обновить схему. И Здесь находится небольшая кнопка обновления. Нажмите сюда. Вы найдете это здесь. Так Нажмите сюда. Вы найдете это здесь. Так это первое. Это второй. [01:25:45] И это будет третий шаг. Хорошо. Это административная работа. Этот Справа расположены схемы. Здесь находится небольшая кнопка обновления. Я слишком много внимания уделил... этот. Вы сможете это найти самостоятельно? [01:25:59] этот. Вы сможете это найти самостоятельно? пожалуйста? Видеть а что представляли собой эти три стороны? были способы доступа к базе данных Здесь сначала мы могли бы создать Базу данных мы должны создать сами, но теперь нам нужно... [01:26:11] создать таблицу внутри таблицы мы необходимо вставить отдельную строку два, поэтому А теперь вместо этого давайте перейдем к делу. Теперь как нам импортировать данные? Данные взяты из SQL-файла. SQL-файл, в котором уже находятся коды. [01:26:25] Этот файл, написанный для нас, находится в Материалы сессии, называемые MySQL Образец папки базы данных. Если вы пойдете Далее распакуйте и извлеките эту папку. каждый Перейдите к выпадающему меню файла слева и вверху. [01:26:39] в углу выпадающего списка файлов у нас есть Четвертый вариант: открыть SQL-скрипт. Итак, мы Здесь выпадающий список файлов находится слева и сверху. В углу нажмите «Открыть SQL-скрипт». [01:26:53] Те, кто работает в своих системах Просто следуйте указаниям и найдите, где находится ваш файл есть. каждый и тот человек, который есть При работе в лаборатории перейдите на рабочий стол. На рабочем столе вы найдете классический... э-э, вы найдет папку с классическими моделями [01:27:07] внутри папки классических моделей вы Возможно, мы найдем файл, поэтому мы собираемся... Файл находится здесь, нажмите на скрипт OpenSQL. найдите, где находится ваш скрипт найдите, где находится ваш скрипт где бы вы его ни сохранили [01:27:29] В открытом состоянии вы видите эти синие цвета? линии? Если я прокручу вниз, вы увидите считают, что это нормально, они создали база данных на 26-й строке, а затем они создали таблицу, а затем они Там было вставлено не так много строк. Итак, это [01:27:42] что-нибудь еще. Просто удерживайте курсор. Где бы вы ни находились, неважно, где бы вы ни были. удерживая курсор. Удерживайте курсор Неважно, где это находится. Просто... иди... Выберите нужный вариант в выпадающем списке и нажмите на него. выполнить все. После того, как вы откроете [01:27:55] Здесь находится SQL-скрипт, перейдите к запросу. Выберите пункт «Выполнить все» в выпадающем списке. Так когда вы нажимаете «Выполнить для всех», Хорошо, будет получен результат действия. Некоторый будут зеленые флажки, некоторые будут предупреждения. Пока что, пожалуйста, игнорируйте. [01:28:08] всё это. Итак, как только вы нажмете на выполнить все, хорошо, подождать пять... секунд там. И вы увидите много чего Проверьте знаки и зеленые предупреждающие знаки. Вот так, и это совершенно нормально. Мы Здесь классических моделей не видно. [01:28:20] Хорошо, пожалуйста, обновите страницу. пожалуйста. Пожалуйста, еще раз обновите схемы. здесь. При обновлении схем здесь, Пожалуйста, подтвердите. Вы можете видеть? Классические модели на данный момент? [01:28:33] Да. Теперь я хотел бы, чтобы вы также заплатили. Внимание! Видите, теперь мы У вас здесь две вкладки? Видите, у нас есть Здесь две вкладки? Один из примеров — это MySQL. база данных, а в другом месте мы находились. написание запросов. Мы это видим? [01:28:46] Да. Итак, у нас есть классические модели, верно? здесь. Мы обновили страницу, и да, мы получили результат. По две вкладки каждому. Одна вкладка будет для один. Верно? Поэтому, пожалуйста, вернитесь обратно на Выполните первый запрос и закройте пример MySQL. [01:29:01] база данных. Нам это не нужно. больше. Пожалуйста, закройте эту тему. Это будет сохранено в вашей системе. Пожалуйста Закройте это здесь и оставьте только один запрос. И сохраните это тоже. Один раз Вы попробуете сохранить это диалоговое окно. [01:29:17] откроется. Вы можете сохранить запрос следующим образом: переход к выпадающему списку файлов и сохранить. Когда вы нажмете «Сохранить здесь», хорошо, [01:29:36] Сохраните файл в любом месте. Назовите то, что вы ищете. Поэтому убедитесь, что вы находитесь именно там, где находитесь. где мы сохраняем, где мы пишем коды. Это классические модели на данный момент. [01:29:51] Мы, э-э, внутри классических моделей здесь я Хотелось бы, чтобы вы развернули текст, пожалуйста, разверните. В классических моделях вы увидите столы. Здесь, когда вы развернете таблицы, вы... Список таблиц вы увидите здесь. Здесь также есть несколько баз данных. [01:30:05] Верно, так как же нам двигаться дальше и посмотреть? Что представляют собой все эти базы данных? присутствует здесь, хорошо, так что мы можем просто спросить Почему бы вам не показать это? Почему бы вам не показать это? базы данных. Следующий шаг — написать. [01:30:21] показать базы данных, потому что теперь у нас есть Здесь несколько баз данных, верно? Итак, мы базы данных. Тогда это даст нам скрытые базы данных, о которых мы не знаем. См. здесь, в этих схемах. Поэтому мы просто Смело пишите код для отображения баз данных. Мы [01:30:35] Список баз данных можно посмотреть здесь. Да. Что же мы здесь видим? Что это? Мы рассматриваем этот конкретный случай. квадрант впервые здесь, потому что Результат есть, верно? Что это? Это называется сеткой результатов. Это [01:30:50] называется сеткой результатов. Сетка результатов Это покажет нам временный результат. Это Временный результат. Итак, в то время как мы Напишите здесь, что такое базы данных, что это такое. Что вы здесь делаете? Здесь отображается список Список баз данных здесь. И это [01:31:04] Это будет временный результат, который Мы можем просмотреть или экспортировать. Так мы сможем это увидеть здесь. Хорошо. И экспортируйте его отсюда. Так всякий раз, когда вы запрашиваете данные всякий раз, когда вы смело запрашивайте данные у кого угодно. Чем занимаются администраторы баз данных? [01:31:19] Они предоставляют вам CSV-файл практически сразу. В какое время они предоставят вам CSV-файлы. Таким образом, вы можете экспортировать его отсюда. Этот Это ваш временный выход. Мы продолжим, оставьте курсор здесь. Мой Курсор здесь, и это молния. [01:31:34] болт со знаком курсора. Поэтому я пойду. и выполните это. И вот мы здесь. Или вы можете нажать Ctrl+Enter, и мы см. временный вывод. Этот временный Вывод можно закрыть. Мы говорили о разных [01:31:48] базы данных, верно? Мы говорили о СУБД. СУБД — это простые файловые системы, которые У нас есть такие ноутбуки. Второй, СУБД. Чем похожи СУБД на Oracle? СУБД. Чем похожи СУБД на Oracle? MSSQL, PL/SQL, PISQL, э-э, у нас есть MySQL. [01:32:03] Здесь, верно? Все снежинки на месте. Это также разновидность реляционной СУБД. базы данных, где данные связаны с друг друга. Правильный? Тогда мы получили Объектно-ориентированная NoSQL. В NoSQL [01:32:16] сохраненные в виде объекта или значений JSON. Почему? Потому что он содержит неструктурированные данные. набор данных, например, если у вас есть видео, вы у вас есть у вас есть видео, подкасты, комментарии, блоги, посты, [01:32:30] фотографии. Итак, набор географических данных. Это слишком большой объем данных, чтобы сохранить его в таблице. находящиеся там предметы. Затем у нас есть график. базы данных. Графовые базы данных сохраняют [01:32:42] налаживание связей внутри иерархии или Блок-схема. У него есть родительский узел, Отношения между родителями и детьми: начало узел, конечный узел, связь узел. Так как мы уже обсуждали, когда мы [01:32:54] о социальной сети LinkedIn как они отслеживают, кто вы есть связаны с ними и как они связаны взаимосвязано с ним, это ваше В LinkedIn вы заходите в Facebook и видите... рекомендации прямо здесь, прямо там [01:33:07] Это реальные сценарии, так что вот они. где создаются эти базы данных какие бы базы данных ни существовали, когда мы Например, если говорить о СУБД, то существует... офис, э-э, организация, которая Вся организация собирает данные. [01:33:21] из различных источников. Что это такое? организация использует множество источников организация использует множество источников Создание набора данных? Итак, как же это сделать? Думаю, данные начинают поступать. серверы? Мы все туда ходим. Все мы [01:33:34] — Идите в офис. Правильный. И э-э, делают Давай, проведи своей картой или Возможно, вы используете биометрическую систему учета посещаемости? Все ли мы так делаем? Да. Вы создаёте данные. Вы создаёте данные. Где находится Куда деваются эти данные? Куда это сохраняется? [01:33:50] У всех нас есть портал, через который вы можете получить доступ к информации о себе. Можете смело упорядочить свою посещаемость? Проверьте свою посещаемость и подайте заявку. листья. Вы можете скачать свою зарплату. Вы можете проверить всё. Мы У вас же есть портал, верно? Этот портал [01:34:04] как веб-сайт. Этот портал похож на веб-сайт. Правильный? Теперь, если этот портал как веб-сайт, где они находятся? собирают их набор данных? Итак, в В бэкэнде этот веб-сайт собирает их набор данных где-то есть. Это их [01:34:17] база данных. Но является ли эта база данных вашей? сервер? Нет. Это там, где находится их набор данных. сохраняется в фоновом режиме. это ваша база данных или это ваша Сервер Oracle или сервер MySQL? Нет. Итак Здесь происходит то же самое, что и с системой управления персоналом (HRMS). [01:34:32] Программное обеспечение там разрабатывается на аналогичной основе. Мы Также у нас есть база данных. инженеры, которые продолжат подключение эти наборы данных приложения передаются на наш сервер [01:34:45] и они позаботятся о том, чтобы что бы ни случилось Данные создаются из всего этого. отделы, возможно, это продавцы. Использование Salesforce и данных позволяет получать там обновлено. Так что же они собираются делать? И к чему это всё? Они пойдут дальше, и они [01:34:58] Сначала получите эти данные. они пойдут вперёд и они получают данные сначала из несколько разных несколько разных параметры. Теперь могут быть множество различных веб-сайтов или порталов или API, через которые эти данные сохраняются. [01:35:12] и как только они это сделают, они получат данные здесь, которые затем, э-э, мы затем, э-э, конец Пользователи, подобные нам, смогут продолжить и извлечь данные и приступить к фактической работе что. Поэтому я, как конечный пользователь, не являюсь обеспокоены тем, откуда поступают данные. [01:35:26] на сервер. Меня беспокоит следующее: если моя должность связана с финансами, если моя работа Моя должность связана с оперативной деятельностью, и я занимаюсь этим уже некоторое время. Получив задачу в качестве аналитика данных, мы им была поставлена ​​задача, которую, э-э, видите ли и в качестве аналитика данных или в сфере бизнеса. [01:35:40] аналитик, в котором вы работаете в страховом секторе вам необходимо увеличить объем продаж на 10%. Вам нужно увеличить объем продаж вырастет на 10% в следующем квартале. Как Все аналитики данных? Да, вам нужно собрать данные. Вы можете получить [01:35:56] несколько деталей товара, клиент подробности. После сбора данных здесь, Теперь тебе нужно заняться анальным сексом и э-э. управление данными, что означает ETF. Вы с сервера? Вам нужны данные из определенный отдел или вам нужны данные? [01:36:12] Снаружи? Правильный. Теперь вы узнаете Давайте, извлеките эти данные. От Куда вы извлекаете данные с сервера или облако, верно? Не всегда у вас будет облако. Вам нужно получить данные из Там было облако. После того, как у вас будут данные [01:36:26] Если вам нужен какой-либо инструмент бизнес-аналитики, то смело используйте его. визуализируйте это, анализируйте это, прогнозируйте это. спрогнозируйте это. Вот что произошло, вот что произошло там. Итак, где используется SQL? SQL используется повсеместно. мы извлекаем данные из [01:36:41] мы извлекаем данные из сервер. Помните об этом, как и мы. SQL — это язык, впервые созданный здесь. Этот метод используется практически во всех программах. Если это не SQL, то язык, похожий на SQL. будет использовано. Таким образом, это здесь заложен фундамент. [01:36:57] понять и усвоить, чтобы вы могли извлечь данные с любого сервера Вам предстоит столкнуться с этим. Хорошо, согласно обсуждение, так что вот оно что есть нечто, называемое DSA. Есть нечто, называемое DSA. Что такое DSA? [01:37:11] здесь? Это ваш источник данных. администрация. Это делается с помощью базы данных. инженеры или разработчики. Верно? Эти инженеры или разработчики... Эти инженеры или разработчики... на самом деле, давайте, и они... э-э... [01:37:25] Подключитесь, смотрите, здесь это называется данными. администрирование источников. Хорошо. Сначала они подключится к исходным данным прямо сейчас. это может быть что угодно, э-э, это может быть что угодно Это может быть и другая база данных, а также веб-сайт. Это может быть файл, это может быть любое облако, например, AWS. [01:37:38] Azor не работает, или ваше облако Tableau недоступно. там, или в любом облаке, или на любом портале. что вы, ребята, имеете право или в вашем офис продолжит работу, подключившись к всё, а затем оно выполняет Здесь в качестве примера можно использовать ETL-процесс из Tableau. [01:37:54] Это может быть ваш SQL-сервер, это может быть Для этого можно использовать Oracle или Python. Сначала извлеките все сырые материалы. оттуда берутся данные, и вы можете продолжать. Реализуйте эту идею в своем SQL-запросе. Затем Они предварительно создают модель данных. Что кто [01:38:08] Это так? Не все инженеры баз данных нас. Эти инженеры определят данные. модель означает, какие таблицы имеются. Какой общий столбец там должен быть? или их следует нормализовать или [01:38:20] Вместе или порознь. Они построят модель данных. создаст весь структура базы данных, а затем Управление данными – это прикладное понятие. Безопасность применяется на уровне строк. Безопасность на уровне столбцов, метаданные, средства [01:38:34] ваша информация о базе данных и ограничения первичных ключей Все меры безопасности приняты в зависимости от того, как пользователь будет внедрять различные Для обеспечения безопасности будут приняты многоуровневые меры. а после этого будет проведено профилирование данных [01:38:48] они позаботятся о том, чтобы всё было в порядке. рабочий профиль, а затем в конце они они пойдут вперед, и они, э-э, они будут Опубликуйте этот набор данных для всех. После публикации этой информации они теперь буду заниматься его управлением, обновлением и [01:39:03] позаботиться об этом. Когда всё будет Если всё готово, тогда мы приступим и получим... Здесь всё есть. Вам не обязательно это знать. об этом. Это делается на серверной стороне. Нас беспокоит то, что у меня есть база данных. Теперь в базе данных у меня есть [01:39:17] столько столов. Мне нужно решить... Как поживают мои клиенты. Итак, как же мне это сделать? Напишите запрос, чтобы мы могли продолжить. и извлечь данные. Хорошо. Итак, вот это [01:39:29] и извлечь данные. Хорошо. Итак, вот это Вся эта конструкция здесь огромная, и в ней есть несколько обучающихся несколько человек работают в этом. Итак, давайте быстро подведем итоги. здесь. Давайте вспомним наш интерфейс. каждый. Прямо в этом интерфейсе. [01:39:43] Это выпадающие меню. Это меню выпадающие списки. Это наш быстрый доступ. панель инструментов. Как только мы его откроем, мы уже Вчера открылся один из них. верно? Правильный. Итак, сегодня, в этот первый день, здесь. И это наши схемы. Это [01:39:58] схемы здесь. Как нам до этого добраться? схемы? Здесь у нас две вкладки. Один Одна из них — административная деятельность, а другая — схемы. Мы Для переключения достаточно просто нажать на него. между ними. Верно? Схемы и базы данных. Этот [01:40:11] Здесь используется терминология MySQL. синонимично. синонимично. Хорошо. Теперь мы узнали о Сначала оставьте комментарий. Почему мы узнали об этом Комментарий здесь? Давайте посмотрим, что получится. [01:40:23] Вот это. Например, получить доступ к базе данных — это комментарий. Что такое комментарий? Комментарий спросили, почему мы их используем. символы. Это не символы. Эти являются обозначениями. Хорошо, мы здесь. передача данных в SQL, который это видит, [01:40:37] Это не приказ. Это не приказ. потому что если я не печатаю фунт потому что если я не печатаю фунт знак или дефис здесь это э-э что э-э Неужели оно считает, что вся эта часть является... команда. Вся эта часть — команда. [01:40:50] что неправильно. Вот почему у нас есть либо мы пойдем вперед, либо нет. и наберите два дефиса и пробел, чтобы Сообщить SQL, что это комментарий. Что такое комментарий? Комментарии могут быть любыми. Описание, которое мы сейчас напишем. Так [01:41:05] Поймите, почему комментарии необходимо, и когда мы пишем прямой Заявление: хорошо, нам не нужно ничего давать. Вот здесь мы можем сразу начать Написать комментарий, хорошо, когда мы уйдем и напишите здесь заявление или [01:41:20] Здесь можно сказать «команда», что означает «мы есть». Здесь я даю команду своему SQL-серверу выполнить какое-то действие. Давайте напишем команду создания базы данных, посмотрим, как это делается. Давайте возьмём эту классику. модели находятся здесь, поэтому переходим к файлу. В выпадающем списке мы нажимаем «Открыть SQL-скрипт». [01:41:38] Образец базы данных MySQL загружен. Где бы он ни находился, где бы он ни был загружен. Выберите здесь свой U.SQL-файл. Возможно, вы Там нет кода расширения, но [01:41:51] Вы найдете этот SQL-запрос, потому что это Это единственный файл, который он будет искать. Один раз Вы найдете файл там, где он находится. Смело нажимайте «Открыть». Как только вы Нажмите «Открыть», и вы увидите новую вкладку. открывается. Верно? Как только вы увидите [01:42:03] Здесь открылась ещё одна вкладка, можете зайти. выполнить это. Как мы это здесь реализуем? Мы держим курсор внутри. Мы идём к Выберите пункт «Выполнить запрос» в выпадающем списке и нажмите «Выполнить все». Хорошо, просто удерживайте курсор здесь. где угодно. Неважно, где. Перейти к [01:42:19] см. сочетание клавиш Control Shift входить. После выполнения всех действий подождите 5 минут. до 7 секунд, а затем нажмите Обновите страницу прямо здесь. Нажмите «Обновить». [01:42:31] Здесь находится кнопка обновления. Обновить Схема, и вы найдете классический модели прямо здесь. Вы можете развернуть Здесь есть столы. Вы увидите список. Только Ниже вкладки «Файл» находится... плюс значок SQL. Чуть ниже вкладки «Файл». [01:42:46] Итак, давайте откроем файл с датой 2. Так что смело нажимайте здесь на кнопку "плюс SQL". Когда вы нажмете здесь на кнопку «плюс SQL», вы... файл откроется в Мы здесь делаем следующее: мы спасаем его прямо от здесь. Там вы найдете небольшой [01:43:02] панель быстрого доступа находится прямо под вашим скриптовый файл. Это снова небольшой быстрый пост. панель инструментов доступа. Вот здесь у нас значок сохранения. Итак, после того, как я нажал на кнопку "плюс SQL", я выполнил следующее: Нажмите здесь, чтобы сохранить. Он [01:43:19] Сохранение откроет очень знакомое диалоговое окно. Здесь поле. [01:43:39] писать здесь. После того, как вы добавили и сохранили файл "да". спасен. Здесь мы работаем. Очень хороший. Итак, это результат наших действий. Произошло слишком много избыточного производства. Теперь смотрите Здесь ощущается результат, потому что у нас есть [01:43:52] были реализованы классические модели. Если ты хочешь Чтобы очистить вывод здесь, вы можете перейти по адресу: Чтобы очистить вывод здесь, вы можете перейти по адресу: Для получения результата щелкните правой кнопкой мыши здесь и очистите. Так если вы перейдете в окно вывода действий Всем привет, хорошо, если их слишком много... [01:44:06] Здесь находятся строки вывода, вы можете их правильно записать. Нажмите и очистите. Так что теперь, когда мы Напишите любой новый запрос, и мы сможем Легко определить результат. Если сказать В выходных данных что-то есть, верно? Нажмите и очистите. [01:44:19] Пока вы этим занимаетесь, давайте продолжим. и обсудим сегодняшнюю повестку дня. Так что... мы уже видели, как это делается. создадим базу данных, и мы сможем приступить к работе. импортировали thesql, верно? Мы импортировали Мы также можем перейти к файлу data.sql. [01:44:33] импорт CSV-файлов, все мы можем также перейти Далее импортируйте CSV-файлы. Так что же? Сегодня мы сначала увидим... Попробую разобраться, как импортировать CSV-файлы. Попробую разобраться, как импортировать CSV-файлы. Как правильно импортировать CSV-файлы? Далее мы [01:44:46] будем двигаться вперед и искать то, что у нас есть. создание и отображение баз данных прямо сейчас собираюсь поговорить о первом типе данных в SQL, но нам нужно понимать данные. типы в SQL. После понимания Здесь представлены типы данных, а затем мы перейдем к следующему шагу. [01:45:02] Продолжайте выполнение запроса SELECT. И что теперь? Это запрос SELECT? Почему, э-э, что это такое? Такова синтаксисная структура этого текста? Мы будем Разберитесь в работе запроса SELECT. Так Сначала импортируем CSV-файл, а затем изучаем... о типах данных в SQL. Это наш [01:45:17] База данных здесь пуста? Оно получило Столов абсолютно нет. Итак, начнём. Далее импортируйте CSV-файл. Итак, под набор данных по оказанию помощи в практике существует В папке с уроками находится Таблица сотрудников. Есть сотрудник [01:45:32] стол. Таким образом, оно находится внутри набора данных. папка. Внутри папки с набором данных вы найдете У вас должна быть папка с документами, относящимися к услугам ассистентов врачей. Там указан номер урока. пять. В этом файле содержится один CSV-файл. Таблица сотрудников в формате CSV. Итак, приступим. [01:45:47] и импортировать эту таблицу в наш База данных здесь. Как нам это импортировать? Мы Щелкните правой кнопкой мыши по столам (все). Щелкните правой кнопкой мыши и выберите четвертый вариант. Мастер импорта данных из таблиц. Перейдите в Четвертый вариант: мастер импорта табличных данных. [01:46:00] Сначала переходим к таблицам базы данных и таблицы. Хорошо, пустая база данных. что у нас было здесь. Перейдите к таблицам, щелкните правой кнопкой мыши и Мастер импорта данных из таблиц. Когда вы нажимаете Что представляет собой мастер импорта данных в таблицу в мастере импорта? [01:46:16] Вы смотрите на это? Это диалоговое окно здесь: предлагает нам посмотреть. Итак, давайте нажмем на предлагает нам посмотреть. Итак, давайте нажмем на Просмотрите здесь и найдите свою базу данных. Просмотрите здесь и найдите свою базу данных. пожалуйста. [01:46:35] Таким образом, внутри материалов содержатся данные. установить папку как практическое занятие пять трудоустраивает Пожалуйста, заполните таблицу и нажмите «Открыть». Когда ты Нажмите «Открыть», и вы увидите путь к файлу. здесь. После этого просто продолжайте нажимать на [01:46:50] следующий. Ничего не делайте. Продолжайте нажимать на кнопку «Далее». пока вы не доберетесь до кнопки "Завершить". Поэтому нажмите здесь "Далее". Без изменений. Нажмите и снова в следующий раз. Без изменений. Нажмите кнопку «Далее» еще раз. Мы... Это предназначено только для нашего ознакомления. Абсолютно. [01:47:08] Вам не обязательно это делать. Здесь есть всё. Просто нажмите «Далее» еще раз. После того, как оно будет выполнено должным образом, оно... Просто проверьте это сами. Затем нажмите на следующий раз. Вам будет показано, что импортировано 20 записей. [01:47:22] Затем нажмите «Готово». Поэтому продолжайте нажимать кнопку «Далее», пока не увидите... Импортировано 20 записей. Как только вы это увидите Там просто снова нажмите «Готово». Верно? Итак, на данный момент мы импортировали CSV-файл. каждый. Теперь мы хотим посмотреть, какого рода [01:47:35] Это стол. Как нам двигаться дальше? Посмотрите на таблицу прямо здесь, чтобы увидеть Столик здесь? Наведите курсор сюда и вы найдете три серых цвета иконки. Информационные настройки здесь и Здесь снова стол с крупной надписью. Так [01:47:51] Выделите этот значок жирным шрифтом и нажмите на него. Когда ты Нажмите на него и посмотрите, что произойдет. Когда Нажмите на него и посмотрите, что произойдет. Когда Вы кликнете на него и посмотрите, что произойдет. [01:48:06] здесь? Открывается новая вкладка и отправляется запрос. написано для вас. Правильный. И что теперь? выбрано здесь. Верно? Правильно в таблицы и столбцы, строки и столбцы [01:48:18] здесь. Это идентификационный номер сотрудника, имя, фамилия, пол, должность, отдел и Всё остальное находится прямо здесь. Мы можем Видишь это здесь, да? И кем мы будем сосредоточившись на написанном запросе для нас. Посмотрите, что здесь написано. Выбирать [01:48:31] эстрикс из первой базы данных, то есть базы данных имя и название таблицы с правым окончанием или заканчиваясь точкой с запятой справа здесь. Итак, что же такое синтаксис? прямо сейчас? Поэтому я вернусь ко второму дню. [01:48:45] Все помните, что нужно переключиться сюда. Как, э-э, этот запрос SELECT работает? Как это выглядит? Что здесь изображено как топор? Значение все колонки. Хорошо. Что это значит? иметь в виду? Нам нужны все эти колонны. Сейчас [01:48:58] В рамках выбранного здесь мы задаем этот вопрос. выберите все столбцы. выберите все столбцы. откуда? Из первой базы данных внутри Сначала перейдите к таблице в базе данных. Итак, мы Здесь необходимо указать полный адрес. [01:49:10] адрес базы данных, который ведет на этот база данных. внутри этой базы данных перейдите и получить все столбцы этого конкретная таблица. Итак, мы... разговариваем Здесь это изложено очень простым языком. Хорошо. Так Если кто-то спросит вас, вот вы: [01:49:26] ужинать, если спросишь, некоторые спрашивают... спросите кого-нибудь, можете ли вы это сделать? Продолжайте. спросите кого-нибудь, можете ли вы это сделать? Продолжайте. и, э-э, дайте мне, э-э, соль и сахар. из кухни. Всё очень просто. Поэтому они они будут двигаться вперед, что бы ни обнаружили. [01:49:39] Вернёт его вам. Либо ты вы можете выбрать все или можете выбрать то, что вам нужно. Итак, здесь вся информация. Адрес прямо здесь, давайте начнём. Поймите, как это работает. в режиме реального времени, поэтому мы будем работать над этим. [01:49:52] классические модели, все правильно, так что, э-э, в в этой конкретной таблице я Хотел бы, чтобы вы понаблюдали за этим сотрудником. ID имя фамилия пол роль отдел какой тип какой тип Данные — это текст, и все они — текст. [01:50:09] будь то алфавит, буквы, цифры, это Это будет текст, и большую часть времени Это будет текст, и большую часть времени Мы держим текст, давайте же... Мы держим текст, давайте же... Изучите требования к опыту и зарплате. [01:50:21] Оценка сотрудников – это всё цифры, поэтому Во-первых, это типы данных в SQL, давайте я перейду к следующему пункту. и вставьте это сюда, чтобы получился первый тип Здесь данные всегда представляют собой текст или символы. в большинстве случаев размер а Подробные размеры, которые вы найдете, следующие: [01:50:36] э-э, то, что вы найдете в формат текста или тип текстовых данных текстовые данные Тип иногда также называют э-э. символ или строка в SQL. Как эти В SQL определены типы данных? Здесь эти типы данных определены [01:50:58] Это машина. Что это за машина здесь? Автомобиль означает Символ фиксированной длины. Автомобиль означает символ фиксированной длины, что в целом Длина будет примерно одинаковой. Что такое Под фиксированной длиной здесь подразумевается что-то другое? В фиксированном длинное имя, любой тип идентификатора или уникальный [01:51:12] код или уникальный идентификатор, который мы предоставляем. Для Например, идентификационный номер сотрудника. Идентификационный номер сотрудника: зафиксированный. У каждого будет либо альфа-самец числовой идентификатор сотрудника. Это будет... э-э... может содержать шесть символов, или может Имеют семь или десять символов. [01:51:27] дано. Идентификационный номер сотрудника для всего персонала. Организация будет получена. Если там это идентификатор продукта, он будет стандартизированный. или любые коды ошибок. или коды дефектов, если таковые имеются в ходе работ. операционный цикл, который также будет включать в себя [01:51:40] фиксированная структура и формат. Хорошо. Так это исправлено в таких столбцах Они определяются характером. Далее вот что где находится здесь очень просто имеет переменная. Что подразумевается под переменной? Название чего угодно. Название чего угодно. Имя [01:51:56] город, продукт, э-э, имя, фамилия имя, страна, что угодно из того, что есть в сети. Это вариант. Var означает переменную длину. Что происходит, когда переменная длина — это что угодно? [01:52:08] данные, которые мы собираемся записать в нескольких форматах там есть ряды, э-э, мы не можем этого сказать Их длина всегда будет одинаковой. У всех разные имена. Нет, нет Названия всех городов похожи. Нет никакого Для этого установлен фиксированный формат. Таким образом, у него будет [01:52:21] переменная длина по строкам, то есть почему это ценно. У нас есть ещё текст. строка, но это наиболее часто используемые. Затем у нас есть числовой в данном числовом значении. Во-первых, целое число. Пример для известного нам целого числа [01:52:34] что это целое число. Что будет Пример целого числа? Целый число. Какие данные будут считаться полными? Число без десятичной точки? Наличные не принимаются. Весь назначен с. Целое число может быть количество автомобилей, припаркованных в определенный день. [01:52:51] количество автомобилей, припаркованных в определенный день. Иногда мы ищем только... э-э... Э-э, целое число возраста. Количество в Инвентаризация верна, это также то, что также является целым числом. Какое количество мы распроданный. Сколько всего сотрудников? [01:53:06] распроданный. Сколько всего сотрудников? Наняли в этом месяце? Сколько человек вышли на пенсию? Количество бракованных изделий. Количество дефекты в изделии. Оценки могут быть в Десятичные дроби не всегда являются целыми числами. Так Это лишь несколько примеров целого. [01:53:19] число. Хорошо. В режиме реального времени. Теперь у нас есть плавающий или двойной. Так что либо мы это называем плавающий, или, как мы его здесь называем, двойной. Да, не беспокойся. Мы все учимся. Итак, вот это Правильно ли использовать плавающий или двойной код? Что такое поплавок? или вдвое? Вот оно, с десятичными знаками. [01:53:34] или дроби. Так что, может быть, мы... дайте мне Примеры десятичных дробей и обыкновенных дробей каждый. Какой тип набора данных может быть в десятичном виде или в виде дробей? Верно? Говорит прибыль любого вида непрерывных числовых переменная с большим числом вне [01:53:49] там. Это будет плавающий или двойной вес. Но У нас здесь есть еще один тип, который называется десятичная дробь. Что такое десятичная дробь? Это значит снова Число с десятичной дробью или обыкновенными дробями. Снова с десятичными дробями и обыкновенными дробями. Затем В чём разница между ними? [01:54:03] числа с плавающей запятой, числа двойной точности и десятичные числа? Если оба Числа записываются с десятичными дробями или в виде дробей, верно? Оно снова включено в зависимости от того, где мы его используем. Первый в Здесь находится плавучий объект. Хорошо. Э-э, на плавучей платформе Здесь мы используем данные типа float или double. [01:54:18] печатайте всякий раз, когда мы работаем с где бы мы ни могли округлить десятичную дробь везде, где это возможно, округляя до десятичной. десятичная дробь, где можно использовать округленную дробь. десятичные значения. Верно? Таким образом, мы можем иметь четыре, например, мы пишем здесь 45 [01:54:36] Допустим, есть несколько вариантов, верно? Если получится, округлю до 45,9. Я могу смело написать это с шагом 45,9. например, тогда я могу продолжить и напишите это, потому что я могу округлить, или я можно просто избавиться от лишней десятичной запятой [01:54:50] указатели там, и этого не произойдет. повлиял на мой последний ответ. Какой вид ценности... есть ли там, где мы можем работать? так? Любой вид математики статистическое значение, рассчитанное так же, как и ваше среднее арифметическое, медиана, мода, стандарт [01:55:06] Отклонение, дисперсия, вероятность. Всякий раз, когда вы двигаетесь вперед и вычисление любых значений, например Вот эти, верно? А если у вас их слишком много Если в конце есть десятичные знаки, мы можем округлить результат. или отрезать это, ладно, я не хочу [01:55:19] Слишком много десятичных знаков. Давайте прекратим это. одному или двум. В таком случае мы используем здесь плавать или удваиваться там, где нас не бывает Оставайтесь здесь. Мы можем округлить это. Затем Где используются десятичные дроби? Мы используем Здесь десятичные знаки, где находятся мои десятичные числа. [01:55:33] все фиксировано, и что бы ни случилось, мы нельзя просто округлить это. Или, хм, прекратите на этом. Что может быть Примеры здесь? Я дам вам очень Примеры здесь? Я дам вам очень Простой пример. Хотели бы вы, чтобы кто-нибудь... [01:55:49] округлите сумму вознаграждения за работу. Что вы сделали? Нет. Поэтому, когда люди фактически писать э-э, любого рода Бухгалтерские и финансовые данные, верно? Они Не округляйте. Они сохранят все Там есть десятичные дроби. Правильный. Любой вид [01:56:05] расчет комиссионных, заработная плата расчет, любой расчет на основе ни по каким причинам, они этого не делают. обойти все препятствия. Верно? Вот где это находится. Тип данных появится позже. Теперь вы узнаете также можно найти множество других данных. [01:56:17] типы тоже, например, большие целые числа э-э, маленькое целое число, среднее целое число, крошечное целое число целое число, основанное на длине целое число существует, и вы его найдете. более. Итак, когда мы действительно встретимся? мы это увидим [01:56:30] несколько различных числовых значений или там же могут быть числовые типы данных. Тогда мы Укажите дату и время. Где же мы найдем? дата и время? Итак, в контексте обработки данных здесь мы Конечно, можно и ввести дату. [01:56:42] отдельно. Можете смело печатать. время отдельно. Конечно, если у нас есть дата и время, у вас будет дата и Отметка времени также есть у нас. Так что либо мы Здесь должна быть отметка даты и времени, или у нас есть [01:56:55] Здесь только отметка времени. Это стандарт. повсюду. Хорошо. Ещё один стандарт здесь. ваш год должен быть отдельным написано потому что иногда, если это подходящее время Данные по временным рядам будут доступны только за несколько лет. Сейчас Годы могут быть представлены в двухзначном формате. [01:57:09] или в четырехзначном формате. Это тоже правда. Мы также обычно пишем так же. Мы также обычно пишем так же. Однако в MySQL формат даты выглядит следующим образом: Однако в MySQL формат даты выглядит следующим образом: зафиксированный. В MySQL формат даты фиксирован. Так [01:57:21] если вы импортируете CSV-файлы или просто э-э, вставка данных f внутрь него Правильно, ваш формат должен быть год-месяц. и дату. Если ваши данные записаны следующим образом это внутри двойных кавычек или там одинарные кавычки, тогда только это будет [01:57:35] воспринимайте это как дату и время как дату. и времени. Время — час, минута и секунд. Аналогично Excel. Э-э, если мы захотим Давай, а мы [прокашливается] — нет. Введите любые пробелы, что угодно. Хорошо. И так снова будет... [01:57:50] рассматривается как дата и время. Вы хотите Только после установки временной метки будет указан час. минут и секунд. Это будет выглядеть так этот и двухзначный или четырехзначный год формат. Мы все понимаем, что 25 или 2025 год. Вы можете написать это как угодно, например: [01:58:02] что. Итак, это ваша дата и время. здесь. Есть несколько вещей, которые я бы хотел... Хочу всем напомнить. всегда и Команда с точкой с запятой, верно? А если вы хотите приступить к выполнению Это верное утверждение, не так ли? Тогда вперед! [01:58:17] и вы можете печатать, вы можете просто идти и выполнить, не снимая курсора. и нажав клавишу Control или Enter. Хорошо. Так что все в скрипте или выбрать или [01:58:30] Хорошо. Так что все в скрипте или выбрать или Я напечатаю здесь для уточнения. Я напечатаю здесь для уточнения. или выберите текущую выписку или сохраните свою курсор там и выполнить. Для выполнения вы также можете пойти [01:58:43] а затем нажмите Ctrl и Enter или Мы можем использовать эти молнии прямо сейчас. здесь. Используйте вторую молнию для одно утверждение. использовать первую секунду Здесь находится панель управления Lightning, которая представляет собой курсор. здесь. Хорошо. Теперь мы уже знаем, как это сделать. [01:58:58] создать базу данных. Мы убедились, что мы Необходимо создать базу данных, и мы можем это сделать. Там должно быть имя. Мы можем продолжить и Отобразить также и базы данных. Верно? Есть одна очень важная вещь, которую мы должны знать. Регистр ключевых слов не имеет значения. [01:59:12] Только ключевые слова, которые мы используем, например: Создание баз данных и многое другое. Это не так. с учетом регистра. Все в порядке. Так что же, как? У нас сейчас много баз данных. э-э, на сервере, чтобы увидеть, что мы будем Просто наберите "шоу". Когда ты [01:59:25] Введите sh в выпадающем списке show is here we вы можете выбрать выставочное пространство. Ищу базы данных. Итак, мы печатаем Здесь находятся базы данных, и на этом мы завершаем заявление. Здесь стоит точка с запятой. А теперь посмотрите сюда Когда курсор здесь мигает, я хочу [01:59:40] для выполнения этого заявления. Либо нажмите контролировать, входить или просто продолжать. Нажмите на эту молнию. прямо здесь почему я объясняю это так... очень подробно сейчас, потому что у меня есть был задан этот вопрос в начале занятия. [01:59:54] покажите еще раз, как это выполнить Вот почему... я не помню твой Имя там есть, но теперь вы понимаете, как? выполнить оператор, написать оператор [02:00:06] пожалуйста, выполните это Теперь вот этот временный результат, который у нас есть. Прямо сейчас у нас его можно экспортировать в CSV — вот как вы получаете CSV-файлы в любое время. вы просите свою организацию дать мне данные. Вот откуда вы [02:00:20] Получите свои CSV-файлы. Таким образом, мой SQL-запрос экспортирует данные в CSV, верно? Так что, если вы хотите, чтобы это было экспортировано, можете смело задавать этот вопрос. экспортируйте это в CSV-файл ваш HTML, JSON, Excel, что угодно [02:00:35] ваш HTML, JSON, Excel, что угодно Если хочешь, ты можешь это получить. Хорошо. Таким образом, его можно экспортировать отсюда. Это ваш временный отпуск. А теперь вот что дальше Мы можем пересечь его и закрыть. У нас есть Здесь знак креста, здесь буква X, верно? Мы [02:00:49] Можно закрыть его прямо здесь. Теперь дайте-ка... Давайте двигаться дальше и узнаем о Запрос SELECT запрашивает данные у всех. Давайте учиться Информация о запросе SELECT здесь. Когда мы Речь идёт о запросе SELECT, верно? Сейчас мы говорим о чтении, чтении [02:01:03] мы говорим о чтении, чтении набор данных или получение набора данных. Верно? Существует последовательность написания. Существует последовательность написания. Ты Помните операции SQL? Первый Получить таблицу. Но я хочу выбрать [02:01:16] отфильтруйте столбцы и строки. Возможно, это зависит от страны или кредитного лимита. Затем я хочу отсортировать набор данных. Так Первый вариант, который у нас здесь есть, это выбирать. Здесь мы пишем последовательность. Во-первых, выбирать. Функция «Выбрать» поможет нам сделать выбор. [02:01:31] столбцы. Верно? Если я хочу выбрать столбец здесь, тогда я смогу использовать get me Идентификационный номер сотрудника, имя сотрудника и так далее. Но если мне нужны все столбцы здесь, что делать? Мы это делаем? Если мне нужны все столбцы, то что? Мы пишем? Да. Очень хороший. Мы продолжаем. [02:01:46] а затем мы придумываем свои трюки. После Выберите здесь, нам также нужно указать мой SQL-запрос. Откуда мы это берём? Итак, Второе ключевое слово, которое мы здесь используем, — это «из». и отсюда мы приводим полный адрес. об этом. Какой здесь адрес? [02:01:59] Адрес — это первый адрес, а затем идут имена схем. Сначала вы пишете имя своей схемы или Сначала вы пишете имя своей схемы или Название базы данных. Все в порядке. Затем мы набираем точка там или точка там, а затем мы Давайте укажем название таблицы. Мы уходим [02:02:12] указывают полный адрес. там. Хорошо. После этого, после этого Здесь, если мы хотим продолжить, подайте заявку. К любому фильтру применяется пункт о допустимом износе. Этот [02:02:25] Придаточное предложение поможет нам... помочь нам для фильтрации строк из базы данных непосредственно в базу данных. Это будет применено фильтрация строк изнутри база данных. Вот пункт, где это находится. Теперь, после пункта "где", у нас есть еще кое-что. [02:02:41] варианты здесь, дополнительные ключевые слова здесь после где это сгруппировано по и имеет порядок где это сгруппировано по и имеет порядок и ограничить. Функция сортировки упорядочивает ваши данные. Сортировка поможет вам решить этот вопрос. верно. Какой предел здесь подойдёт? Лимит [02:02:54] это ограничит количество строк и выход. Количество строк и результат. у них есть право на экспорт. Если вы хотите увидеть только пять строк 10 строк это будет [02:03:06] Просто ограничьте это. подсказка определяет источник данных, которые мы ищем забрать. Да, можно так сказать. Так мы просто просим об этом. контейнер, это справка. Итак, давайте В первую очередь сосредоточьтесь на этих четырех пунктах. [02:03:20] верно? А затем мы двинемся дальше и Усвойте это. Для начала давайте начнём с малого. с помощью select и from у нас есть классический Здесь же есть модели, верно? Итак, как это сделать? Синтаксис для оператора select выглядит следующим образом? здесь. Теперь мы это прекрасно понимаем. [02:03:33] легко. Нам нужно написать select. У нас есть чтобы определить, хотим ли мы использовать несколько столбцов или Здесь одна колонка, а затем мы зададим этот вопрос. для выбора определенных нами столбцов из Название схемы указано прямо здесь. Вот как это Синтаксис выглядит так. Итак, давайте начнём. [02:03:49] и напишите это здесь. Мы собираемся написать Здесь выберите. Я выбираю из выпадающего списка. Давайте теперь получим все столбцы. потому что мы не знаем, как это происходит таблицы есть. Выберите все из. Видеть [02:04:04] Здесь я просто печатаю и выделяю. из выпадающего списка, откуда классический из выпадающего списка, откуда классический модели. Итак, мы напечатаем здесь C L A, смотрите. Классические модели есть в выпадающем списке. Там написано, что это схема. Выберите его [02:04:16] с помощью клавиши Tab или двойным щелчком мыши. я Выбрали это. Теперь мы хотим Определите таблицу. Итак, мы нажимаем на... мы Вверху, э-э, нажмите на точку там. Введите точку там или знак груши. Вы увидите список таблиц внутри него. Итак, давайте посмотрим. [02:04:29] Прямо сейчас за столиком у клиента. Что Это первая таблица здесь. Нажмите на вкладку или Дважды щелкните по нему, и оно там. Сейчас Здесь мы ставим точку с запятой. После того, как вы вставите точка с запятой, клавиша Ctrl+Enter или щелчок мышью здесь. После того, как вы перейдете по этой ссылке, вы найдете [02:04:43] Здесь находится весь стол с клиентами. Также Посмотрите на результат здесь. Там написано 122 Строки записаны. Смысл всего этого В наборе данных содержится 122 строки. Выбирать Выберите его из выпадающего списка. Не пытайтесь Напечатайте всё целиком. Мы сделаем это [02:04:59] являются людьми. вы сделаете эти орфографические ошибки Совершать ошибки очень легко. В настоящее время мы Получение всех столбцов. Хорошо. В настоящее время мы Получают все столбцы. Итак, далее мы посмотрим, как... выбрать только один столбец. Выбирайте только [02:05:15] там один столбец из набора данных. Как Давайте выберем только один вариант. Выберите только один столбец, мы введем текст. выбирать. Все в порядке. А давайте посмотрим с... Здесь находится стол с клиентами. из Здесь, за столом для клиентов, мы просто хотим... [02:05:29] Получаем только имя клиента и ничего больше. Хорошо, в таком случае, что же нам делать? не буду продолжать печатать этот столбец. имя абсолютно неприемлемо, давайте воспользуемся графический интерфейс здесь, когда Здесь вы расширите клиентскую базу, и... [02:05:44] Вы осознаете, что у вас сейчас есть колонки, когда... Разверните столбцы, и вы сможете Разверните столбцы, и вы сможете Чтобы просмотреть все названия столбцов, перейдите сюда. Хорошо, как только вы сможете просмотреть все Названия столбцов прямо здесь, если я захочу. [02:05:57] Введите здесь любое имя столбца, нам нужно Просто дважды щелкните. Нам просто нужно дважды щелкните по этому, и это произойдет. автоматически вводит это в скрипт. Первый все расширяются, расширяются, расширяют охват [02:06:11] Здесь указаны названия столбцов, относящихся к клиентам. Сейчас после выбора здесь, когда курсор находится кликните на имя клиента и посмотрите его. появляется здесь. Откуда же нам теперь нужно ехать? это? Итак, мы снова начнём печатать. Хорошо попросите его снова перейти к классическим моделям и [02:06:25] от классических моделей к клиентам снова, и будет получен только один Для нас это одна колонка. Аналогичным образом способ, если мы хотим несколько столбцов в Аналогичным образом, если нам нужно несколько. Что нам нужно сделать, чтобы получить данные из нужных столбцов? [02:06:38] Давайте снова введем и выделим текст. На этот раз мы просто дважды щелкнем по несколько столбцов. Например, double Нажмите на имя клиента. страна. Далее, возможно, я буду интересоваться их кредитной историей. [02:06:53] Здесь установлен лимит. Поэтому продолжайте ставить запятую здесь. И у нас всё хорошо. После этого я снова смогу Скопируйте и вставьте отсюда. Зачем писать это снова? Так что скопируйте и вставьте. [02:07:05] это. Мы можем вставить это в другую строку. также. Почему? Потому что мы это прекращаем. здесь. Таким образом, оно понимает, что если не увольнение не происходит, и все это... одна-единственная команда. Так что, если я продолжу мой курсор прямо здесь после того, как я это напечатал [02:07:20] в двух строках, и я выполняю прямо здесь. Вы обнаружите, что у нас есть имя клиента. Информация о стране и кредитах здесь. Первая попытка Выведите это в один столбец, затем поставьте запятую. и попробуйте это для нескольких столбцов. Мы используют здесь знак хэштега, чтобы сообщить [02:07:35] SQL-запрос подтверждает, что это комментарий, который я пишу. Это не комментарий, который следует исполнять. Это Это не команда, которую нужно выполнить. Так ли это? Это сообщение, которое я здесь пишу для наше собственное понимание. Мы используем хэштеги или дефисы. Вопрос: почему это [02:07:50] есть? Что такое комментарий? Почему мы Вам это нужно? Потому что нам нужно различать команду и просто послание, написанное для нас самих понимание. Это сообщение написано для нашего собственного понимания. SQL этого не делает [02:08:03] Это необходимо. Все в порядке. Итак, теперь у нас есть один столбец и несколько столбцов здесь. Всякий раз, когда мы это пишем, Вот так мы пишем. Хорошо. Но Есть способ это напечатать. Это не функциональный язык, но у него есть [02:08:16] Формат, который нужно будет написать, поскольку мы новички. А мы этого здесь не знаем. Так что вперед! и выберите конец, выберите эти Здесь две строчки, и можете нажать на [02:08:28] эту кисть прямо сейчас. Это кисть для улучшения внешнего вида. Что это такое? Это Кисть для улучшения внешности или, э-э, вот здесь есть сочетание клавиш. Это Ctrl+D. Так что украсьте или вы можете Это Ctrl+D. Так что украсьте или вы можете Назовем это переформатированием. Это украшает или [02:08:40] Назовем это переформатированием. Это украшает или здесь переформатировать отдельно, иным образом в правильный функциональный язык. Смотрите сюда Как это выглядит после косметической процедуры? это. [02:08:55] Поэтому я выберу всё это целиком. Нажмите клавишу Command и щелкните по этой кисти. После того, как я нажму на кисть, произойдет следующее: Как это выглядит. Выберите правильно Как это выглядит. Выберите правильно имя с пробелами и правильно расположенные пробелы [02:09:08] Адрес указан прямо здесь. Хорошо. Э-э, вы этого не делаете. У нас есть база данных под названием employee. стол. Извините, у вас нет базы данных. называется первой базой данных. Это Так это и должно быть написано. Который из Выглядит лучше? Первый или второй? Первый [02:09:22] Лучше второй вариант. Вот как это происходит. Мы это напечатали. Вот как это произошло. облагораживает и пишет это. Который из Выглядит лучше? Верно. Абсолютно. Он Второй вариант здесь выглядит лучше. Верно? Однако лучше почитать. Если я [02:09:35] Пересмотрите этот конкретный сценарий. тогда нам будет легче читать. и понять. Однако дело не в этом. Легко писать. Поэтому писать здесь легко. Но когда мы захотим вернуться к этому вопросу, вот что... лучший способ это сделать. Просто способ для [02:09:49] ты. Если вы пишете текст длиной в два абзаца При отправке запросов всегда проверяйте это. Это будет легче читать. Итак, позвольте мне также написать Я здесь с вами. Итак, начнём. Я буду Я здесь с вами. Итак, начнём. Я буду попросите его выбрать здесь. Выберите, и мы [02:10:02] просто дважды щелкнете по названию продукта дважды щелкните по цене покупки здесь и Теперь мы знаем, что можем просто скопировать и вставить. от классических моделей клиентов Но нам ведь не нужны клиенты, правда? Мы ищем товар, поэтому нам нужно... [02:10:17] заново написать классические модели и получить Здесь мы можем выбрать товары для украшения и выполним это здесь, и получим отвечать Сейчас здесь есть одна проблема, поскольку мы работаем над одним единственным [02:10:31] база данных. Все в порядке. Каждый раз, когда бы то ни было Мы пишем запрос, нам нужно написать классические модели классические модели множество раз. Так как же от этого избавиться? Мы уходим и мы настраиваем эту базу данных. [02:10:45] по умолчанию по умолчанию. Давайте посмотрим. Всякий раз, когда я вас здесь спрашиваю, идите и получите Таблица товаров, иди и возьми... Столик для сотрудников, идите и заберите заказы. стол, какой бы стол я вам ни назвал, Перейдите к базе данных по умолчанию. [02:10:59] Как нам здесь установить базу данных по умолчанию? Мы напечатаем здесь текст, используя классический язык. начиная с этого момента. Смысл отсюда и смело используйте только классические модели. в качестве нашей базы данных по умолчанию. Когда мы уйдем и выполните это здесь, наш [02:11:14] База данных превращается в базу данных по умолчанию. А как мы узнаем, что это превратилось в... База данных по умолчанию? Смотрите, я пишу это здесь. Я Выполняю прямо здесь. В тот момент, когда я Выполнение этой задачи приведет к тому, что классические модели превратятся в... [02:11:27] смелый. Верно? Другой способ — установить Это по умолчанию. Мы можем щелкнуть правой кнопкой мыши что какое бы имя таблицы мы ни написали, оно Я принесу нам этот стол. Это схема по умолчанию. Здесь вы можете также дважды щелкните по нему и превратитесь в [02:11:43] по умолчанию. Например, если я удвою Нажмите на первую базу данных, она откроется. смелый. Это значение по умолчанию. Если я дважды щелкну На классических моделях это будет выглядеть смело. Это означает, что это значение по умолчанию. Итак, есть Существует несколько способов настроить базу данных. [02:11:56] как D. Это очень простая вещь, которую мы Вы пишете здесь, используя базу данных? установите это значение по умолчанию и обратите внимание, что Когда мы это сделаем, это превратится в то и другое. Сделайте это здесь, если я осмелюсь это сказать. ок, выберите [02:12:10] все и допустим, нам нужны заказы из Поэтому сейчас я не буду вводить название таблицы. Внимательно посмотрите на это сейчас, я не... Напишите здесь название классической модели. Я хочу чтобы напрямую написать здесь название таблицы [02:12:24] например, заказы, поэтому, если я хочу Здесь таблица заказов. Я просто пойду сюда. и дважды щелкнуть даже по названию Таблица, смотрите здесь, выберите все из I больше нет, потому что это установлено по умолчанию. Мы переходим к заказам и дважды щелкаем мышкой. [02:12:41] Заказы будут оформлены автоматически. Здесь мы можем закончить точкой с запятой. Выполните это и убедитесь, что заказы здесь. Хорошо, пожалуйста, возьмите это. [02:12:53] не написав классические модели, я Жду ваших ответов. Впредь, Что бы мы ни написали в этом скрипте, верно? Нам не нужно печатать классический текст. модели. Опять же, если вы используете какую-либо таблицу который присутствует в этой базе данных, [02:13:09] вместо выбора из выпадающего списка, Теперь мы можем просто дважды щелкнуть здесь. Мы Укажите название таблицы прямо здесь. Наблюдать выбранный здесь материал написан на заглавные буквы. Здесь выбранный из записан в меньший по размеру корпус. Оба устройства работают исправно. [02:13:23] Почему? Потому что регистр не имеет значения. Мы продолжим, и сейчас посмотрим, как это будет выглядеть. Нужно ли здесь фильтровать строки? Для фильтрации Давайте начнём с этих рядов, э-э... Иметь несколько товаров в наличии. Совершенно верно Теперь мы приступим к получению товара. [02:13:37] Название и закупочная цена. Мы продолжим и Получите название товара и закупочную цену. Однако на этот раз мы получим возможность совершить покупку. цена и название товара. Продукт цена и название товара. Продукт имя. Хорошо. Какие из них ниже? [02:13:51] имя. Хорошо. Какие из них ниже? больше 100. Хорошо. которые ниже, чем 100. Это означает, что цена покупки ниже, чем 100. [02:14:03] иметь название продукта и классический модели продукции. У нас это уже есть. здесь. Давайте напишем это еще раз. Итак, мы Вводя текст здесь, выберите. Мы перейдём к столу с товарами. Мы будем Допустим, нужно получить название продукта. [02:14:17] Допустим, нужно получить название продукта. Откуда теперь взять цену покупки? От напрямую с продукцией. Итак, мы дважды щелкаем по продукция. Теперь у нас есть продукция. Теперь, если мы это осуществим, мы Как видите, цена покупки находится прямо здесь. Купить [02:14:31] Цена указана здесь. Ага, понятно Все показатели уже ниже 100. Так что... Все показатели уже ниже 100. Так что... Давайте сделаем так, чтобы было меньше 50. Хорошо. Где бы то ни было Цена покупки ниже 50. Так как же? Вводить ли здесь фильтр? После [02:14:44] Отсюда мы перейдем к набору текста. где пункт где Где находится фильтр, который мы хотим установить? Мы Хочу сказать, что нужно пойти и проверить возможность покупки. цена. Проверьте цену покупки. Итак, мы Можете смело дважды нажать кнопку «Купить». [02:14:58] Можете смело дважды нажать кнопку «Купить». Цена снова. менее 50. Поэтому мы можем смело использовать Здесь стоит знак "меньше". Таким образом, цена покупки составляет [02:15:10] Меньше 50. 50 — это число. Хорошо. Так Когда мы приступим к его реализации, вот что произойдет дальше. Когда мы приступим к его реализации, вот что произойдет дальше. Здесь выполните это, здесь сколько строк? У нас есть прямо сейчас. Изначально у нас было 110 строк. Смотрите, изначально у нас было 110. [02:15:26] рядов. После фильтрации у нас остаётся только 48 рядов. 48 рядов. У нас всего 48 рядов. Смотрите здесь. [02:15:41] скажите мне, что среди этих 48 Где у нас самая высокая закупочная цена? Какой товар имеет самую высокую закупочную цену? Чтобы найти самую высокую цену покупки, мы имеем чтобы разобраться с этим. Как мы можем это решить? Я Собираюсь скопировать и вставить то же самое. [02:15:56] Собираюсь скопировать и вставить то же самое. здесь. После этого мы можем попросить его сделать заказ. к По какому столбцу расположить в порядке очередности? По цене. Заказ по определённой колонке. Поэтому мы используем фильтрацию по сортировка по сортировке также выполняется по сортировке ... [02:16:11] сортировка означает упорядочивание моих данных. набор. Итак, в порядке, если я его попрошу... Закажите по цене здесь, и мы выполним ваш заказ. прямо здесь. Смотрите, это самая низкая цена. Мы видим. Так что сейчас мы, так сказать, в общем-то, По умолчанию будет произведена сортировка или упорядочивание. [02:16:29] таблица в порядке возрастания в порядке возрастания, или, можно сказать, в в порядке возрастания, или, можно сказать, в возрастающий порядок [02:16:41] верно? Если вы хотите это отсортировать в в порядке убывания, Если будет заказ, то мы просто приступим к его оформлению. Определите, что нужно получить порядок убывания. Так [02:16:53] Цена покупки здесь, После того, как цена покупки здесь, теперь мы хотим установить затем в порядке убывания. Итак, для В порядке убывания мы просто напечатаем D. [02:17:06] здесь. Если мы введем здесь dc и выполним его, Прямо здесь мы найдем самый высокий ценить. Если мы ничего не определим после этого и мы его выполним, у нас есть Сниженная цена. Итак, чем мы занимаемся? Были [02:17:22] Применяя фильтр, мы выполняем сортировку. и нашей продукции. Давай, найди его. вне. Сначала отфильтруйте. Вы уже иметь отфильтрованный список. А что теперь? Что мы сделаем дальше? Мы движемся вперед и сортируем Оцените свою ценность или упорядочьте свой результат. [02:17:38] рассматривать их по одному, и это наименьшее чем знак. Это простая логическая ошибка. оператор всех, или, как это можно назвать, а Условный оператор. Вперед, выполняйте! Условный оператор. Вперед, выполняйте! по одному, и дайте мне знать, если мы все еще [02:17:50] имеют менее 10 ответов. Сортировать по Вот что такое порядок по смыслу. сортировка моего набора данных, упорядочивание выходных данных. Так что, если я просто возьму и попрошу его... Так что, если я просто возьму и попрошу его... отсортируйте, э-э, запросите результат вот так. [02:18:04] правильно, это мне даст, нет никакого Порядок сортировки соответствует порядку расположения предметов на вашем столе. Выходные данные, организованные каким-либо образом, являются ли они таковыми? в алфавитном порядке или же цена покупки согласована в каком-либо порядке Порядок действий не установлен, поэтому что мы здесь делаем? [02:18:17] Мы спросим, ​​почему бы вам не сделать заказ. по цене покупки, когда мы её запросим. по умолчанию сортировать по цене покупки заказы в порядке возрастания заказы в порядке возрастания порядок покупки Да, но что, если мы [02:18:30] Не хотите этого? А если мы этого захотим? нисходящий или убывающий порядок? Итак, мы Давайте, мы напишем то же самое. вещь. Просим вас сортировать по цене. но перед этим мы пишем «нисходящий» Д. Мы определяем это прямо сейчас, когда вы [02:18:43] расстановка стола по принципу "с помощью..." столбец по цене. Убедитесь, что вы это исправили. в порядке убывания. Таким образом, это будет отсортировано по категориям. Таким образом, это будет отсортировано по категориям. в порядке убывания. [02:18:58] И снова вопрос к А. Хорошо. Вы можете найти мне клиентов? клиенты от страна Франция из страны Франция и э-э, э-э, то [02:19:14] из страны Франция и э-э, э-э, то имена в порядке возрастания. Для этого, пожалуйста? Какой стол вам нужен? Какие столбцы вам нужны? Сначала скажи мне [02:19:26] Какой стол нам выбрать? Из которого В таблице мы можем получить эту информацию. Так хороший. Какие столбцы нам нужны в выходных данных? Вы говорите мне, что от клиентов... сделанный. [02:19:42] Какие столбцы вам нужны прямо сейчас? Какие столбцы нам нужны? Страна. Мы это делаем стране нужна страна. Что ещё нам нужно? ВОЗ Это клиенты? Верно. Нам нужно имя клиента тоже. Это тот результат, который мы получили? [02:19:55] Вы ищете? Очень хороший. Майя — это Это единственный результат, который нам нужен? Нет, нам нужны не все страны, а только... из Франции. Итак, теперь, когда у нас есть мы выбрали здесь все, что было после этого. необходимо применить пункт "где" [02:20:10] Почему? Потому что мы ищем страну. Это должна быть Франция. Поэтому, когда мы, когда мы Ищете то, что ищете? Тогда приступим. и снова дважды щелкните по стране и на этот раз мы используем другой оператор, который равно знаку, и теперь мы пойдем. [02:20:23] и введите «Франция» во время набора текста. Франция здесь, поскольку Франция — это текст, он должно быть включено в один из одинарные или двойные кавычки, верно? всякий раз, когда вы пишете текст или дата текст или дата, это должно быть [02:20:39] заключено внутри двойных кавычек только тогда оно сможет когда вы зададите вопрос стране из Франция, вот здесь, в результатах поиска, вы увидите У вас здесь всего 12 строк, а у нас что? Здесь сейчас всего 12 рядов, мы хотим [02:20:54] Отсортируйте здесь. Итак, теперь название страны. похоже. Итак, как же нам это отсортировать? здесь? Таким образом, мы можем отсортировать по Здесь указано имя клиента. Итак, мы пойдем. и дважды щелкните по имени клиента [02:21:06] прямо здесь. Даже если я не буду писать восходящее движение будет происходить в восходящем движении порядок, который является A2. Вы также можете продолжить. и определить asc, который является восходящим, то есть Также это будет установлено в восходящей модели. Итак, что бы мы здесь ни рассматривали, [02:21:20] Всё в порядке, это ваши условия. операторы, это все определяющие условия для отдельных лиц условия. [музыка] Поэтому они называются условными. операторы или логические операторы, которые вы можете [02:21:33] сказать. Что это? Эти операторы равно меньше [музыка] больше или любые комбинации прав. Это не равно. Вы также можете написать записку. не равно. Вы также можете написать записку. равно вот так. [02:21:51] каждый. Вот как мы их используем: определить одно-единственное условие. Верно? я Я напишу это в кодовая оболочка. Вы можете получить это оттуда. и дайте мне знать, когда мы сможем двигаться дальше. потому что, э-э, дальше я бы хотел... [02:22:08] Вот список стран. Что я список стран, которые я хочу, клиенты список стран, которые я хочу, клиенты принадлежать. Список стран-участниц программы поддержки клиентов принадлежать. Список стран-участниц программы поддержки клиентов Это то, что мы хотим получить. [02:22:22] Хорошо. Мне нужна только одна колонка. Я хочу Только один столбец, в котором указана страна. Итак, мы Только один столбец, в котором указана страна. Итак, мы Нужен список стран. Пожалуйста, сообщите мне, когда мы сможем переехать. пересылка [02:22:45] операторы. Хорошо. Как мы можем добраться до Только рубрика "Страна"? Как мы можем получить Здесь только одна колонка, посвященная странам, где мы можем все страны, все. Итак, вот это Мы хотим выбрать. Мы хотим выбрать Откуда из какой страны? От местных покупателей. [02:23:01] Верно? Если мы чего-то хотим от клиентов здесь, Мы выполняем это здесь. Это список стран. Это правильно? Мы У нас здесь 122 страны? [02:23:13] Нет, есть дубликаты. Есть повторяющиеся элементы. Дубликаты присутствуют. Итак, как же избавиться от дубликатов? здесь? Мы получаем уникальный список. Ну и что Мы как раз и хотим получить... уникальный список. чтобы получить, как мы получаем [02:23:26] хотите удалить дубликаты, мы хотим их удалить. Всё, что это повторяет, это дубликаты. Итак, мы приступим к копированию. вставить то же самое, но мы используем теперь функции работают правильно и [02:23:41] теперь функции работают правильно и ключевые слова. Ключевое слово здесь — distinct. Ключевое слово здесь — «отличительный». Отчетливый Значит, это уникально, верно? Итак, если я продолжу... Значит, это уникально, верно? Итак, если я продолжу... Напишите здесь distinct, это ключевое слово, верно? [02:23:56] если я использую здесь слово "отдельный", и мы Выполните это прямо здесь. Теперь мы видим, что Мы получили 27 строк, и в них содержится следующее: Там находятся 27 стран. Этот отличительный признак может быть [02:24:08] написанное либо в виде ключевого слова, либо иногда вы также обнаружите отчетливую прибыль или используется там как функция. Так что, когда это происходит используется как функция distinct будет за которой следует открывающая скобка par и после того, как страна будет закрыта [02:24:24] внутри скобок и закрыто, как что. Иногда вы можете обнаружить что-то подобное. Абсолютно верно. Они тебя достанут Тот же ответ. Хорошо. Вот так мы и поступаем. Получите здесь уникальный результат. Так что вперед! Получите этот уникальный список там. Если [02:24:39] Я спрашиваю вас, сколько стран существует? Вам нужно посмотреть на результат, верно? Вам нужно посмотреть на результат, верно? 27. А что, если я не хочу это видеть? Список всех 27 стран, верно? Мы не хочу видеть список всех 27 [02:24:53] страны. Я просто хочу знать, что я просто хочу знать, сколько сколько стран количество стран количество стран [02:25:05] есть. Сколько стран есть ли там, куда мы отправляем наши товары? продукт. Я просто хочу знать, сколько количество стран означает общее количество страны основное общее количество стран чтобы точно получить общее число или ответ [02:25:19] Для скольких функций производится подсчет? Функция подсчета прав. Итак, как же нам это сделать? Использовать этот счетчик здесь? Мы хотим посчитать Сколько всего стран? там. Итак, у нас уже есть список страны. Мы просто хотим это подсчитать. [02:25:34] Список стран здесь. Вот я и здесь. Выберу это здесь. Выберите и Скопируйте и вставьте это сюда. И теперь мы Попрошу его продолжить подсчет. Хорошо [02:25:47] Попросите его посчитать. Считать что? Функция Count есть у каждого. Так Здесь вы открываете скобки, потому что счет это функция, и внутри этого счетчика здесь [02:25:59] Если вы позволите, наберите по количеству символов. вы получите ответ, обратившись непосредственно в страну. вы получите ответ, обратившись непосредственно в страну. Здесь 122 — это правильный ответ. Нет Мы знаем, что правильный ответ — 27. Поэтому мы Придётся сказать, что нет, не надо. [02:26:14] Придётся сказать, что нет, не надо. подсчет столбца полностью. Давай, вперед! отчетливый Сначала вы определяете страну, а затем — место жительства. Итак, смотрите Надпись «distinct» написана синим цветом, верно? [02:26:27] Это ключевое слово. Его также можно использовать в качестве Это функция, но и количество тоже функция. Убедитесь, что сразу после подсчета это затем следует вступительная скобка. Сейчас После выполнения этой операции мы получим подсчет. Это отдельная страна, обозначенная цифрой 27. Верно? Так что это возможно [02:26:41] либо так написано, либо мы можем просто уйти. Идите вперед и напишите это тоже так. Итак, мы Здесь будет указано количество, в открытой скобке. здесь и закрывающая скобка прямо здесь. Если вы набираете это так, а затем и мы Ответ: получить 27. Однако, является ли это так? [02:26:58] Название столбца в выходных данных отображается корректно? Я дам вам достаточно времени. Ответьте мне Здесь только один момент. Это название столбца? Вы хорошо выглядите? Нет. Поэтому нам нужно... Переименуйте этот столбец, хорошо? Мы должны Переименуйте этот столбец здесь. переименовать [02:27:12] Название этого столбца здесь, в выходных данных, мы Я предложу ему альтернативный вариант. имя, и мы называем это имя псевдонимом. Итак, псевдоним — это всего лишь альтернативное название, которое мы ему даём Как переименовать конкретный столбец? [02:27:26] Как переименовать конкретный столбец? Здесь нужно переименовать столбец, чтобы... Это наш запрос SELECT, верно? Я так и сделаю. Я буду держаться в следующей строке Я буду держаться в следующей строке выпускной бал в следующей строке, и как только мы [02:27:38] Полную функцию напишу позже. Вот это мы сейчас напечатаем как s здесь и внутри двойных кавычек В данный момент я пишу то, что у нас здесь есть. В данный момент я пишу то, что у нас здесь есть. общее количество стран, общее количество стран [02:27:52] Здесь указаны страны, поэтому я пишу здесь общее количество. количество стран прямо здесь, так что если я продолжу писать например, общее количество стран внутри одинарных или двойных кавычек здесь и я выполню это прямо здесь, это будет [02:28:06] и я выполню это прямо здесь, это будет Переименуйте его правильно, это называется так. Однако существует множество способов. здесь нужно ввести названия областей. Верно? Что такое А как здесь обстоят дела с другими путями? Итак, позвольте мне скопировать и [02:28:18] Вставьте это сюда. Другой способ заключается в том, что я не станет давать двойную оплату кавычки. Таким образом, я могу сразу же приступить к печати. Здесь указано имя. Но если я продолжу и Введите имя прямо здесь, я... я Больше нельзя ставить пробелы. [02:28:31] число или что-то в этом роде. Итак, мне пора идти. и напишите общее количество стран или общее количество стран. страны прямо здесь или количество страны. Поэтому, даже если я не дам Двойные кавычки... э-э, вот мы... у меня всё хорошо. Я могу здесь назвать название колонки. [02:28:45] Его переименуют, но мы не можем дать никаких пояснений. больше нет мест. Если оно вдвойне Цитаты, которые мы можем привести, содержат пробелы. Мы можем печатать Всё началось с числа или чего-то ещё. Хорошо. Это может быть буквенно-цифровой формат. Что такое А как иначе? Другой вариант здесь — мы [02:28:58] каждый раз, когда мы печатаем, чтобы определить, что мы используют псевдоним или альтернативное имя. Даже если я не напишу это здесь, а напишу позже. укажите общее количество стран как есть. [02:29:10] и, э-э, позвольте мне изменить укажите здесь свое имя, чтобы вы могли его увидеть. выход. Итак, если я решусь на это, Это место снова переименовано. Так что даже если [02:29:22] Я не печатаю, потому что SQL понимает, что мы переименовывают столбец. Так что, вперед, считайте! и переименуйте столбец в выходных данных. Это псевдоним. Это очень просто. Мы Это псевдоним. Это очень просто. Мы Всегда давайте ему имя. [02:29:36] Это ещё один способ набрать текст. Так что даже если вы не пишете о том, пишете ли вы Ставить двойные кавычки или нет, хорошо, вы сами. двойные кавычки всё равно появятся учитывая, когда мы хотим выделить пробелы во имя. Однако в стандарте [02:29:49] На практике мы не ставим пробелы в имя. Даже если мы даём двойное имя. Даже если мы даём двойное Цитаты, хорошо, предпочтительный способ такой. Предпочтительный способ — это вот этот. На это есть причина, потому что... как [02:30:01] Начинающий, хорошо, если вы посмотрите. что-то написанное прямо здесь вы Возможно, стоит попробовать найти это в виде колонки. Имя здесь. Чтобы избежать путаницы, избегайте путаницы, хорошо? мы всегда будем введите текст, и мы всегда будем предоставлять [02:30:15] двойные кавычки, подобные этим, заставляют нас... Нам так легче узнавать имена. здесь. У меня к вам вопрос. Ан Упражнения для других. Я жду. Этот [02:30:28] Упражнения для других. Я жду. Этот Это всего лишь упражнение. категория. Таким образом, линейка продукции находится в одном углу. [02:30:48] Эта часть останется Здесь ситуация похожая. Итак, я собираюсь скопировать и вставить. А теперь нам нужно работать над продуктами. За столом всем. Итак, мы перейдем к Здесь находится таблица товаров. Внутри этого мы хотим подсчитать количество отдельных товарных позиций. Мы [02:31:02] Дважды щелкните по этой товарной линейке. Мы Назовём это так: да, мы можем это записать. В любом случае это не имеет значения. И э-э Я пишу это здесь как Я пишу это здесь как весь ассортимент продукции [02:31:21] таблица товаров, и здесь мы сейчас используются такие функции, как подсчет, хорошо? отклонение и гораздо больше максимума минимума, верно? [02:31:34] мы можем смело использовать подобные функционирует аналогичным образом. верно, так что, э-э, не только функции мы можно просто использовать математические операторы [02:31:47] Кроме того, мы можем использовать не только логическое ИЛИ. Здесь представлены операторы и функции сравнения. мы также можем использовать математические операторы или простой математический расчет. Таким образом, с помощью этих данных мы можем фактически сложите все вычисленные [02:32:02] колонна перед выходом. Итак, давайте Возьмём здесь пример. Итак, у нас уже есть У нас же есть таблица с товарами, верно? Мы знаем Как извлечь идентификатор продукта, название и После цены покупки у нас есть столбец с рекомендованной розничной ценой (MSRP). Также и там. Это стандартная цена. [02:32:16] по той цене, по которой мы его продаем. Правильный? Мы можете смело получить эти три колонки. оттуда. Однако теперь компания... решил, что что бы это ни было Стандартная цена есть, мы будем повысить стандартную цену на 10% [02:32:32] каждый продукт. они повысят стандартную цену на 10% с каждого товара. Поэтому они хотят Добавьте сюда новый вычисленный параметр. столбец, называемый новой рекомендованной розничной ценой, находится на выходе и... новая рекомендованная розничная цена будет всего на 10% выше. [02:32:48] чем старая рекомендованная розничная цена здесь. Верно? Итак, вот это Теперь рекомендованная розничная цена станет прежней рекомендованной розничной ценой. Данная рекомендованная розничная цена Теперь рекомендованная розничная цена станет прежней рекомендованной розничной ценой. Данная рекомендованная розничная цена станет прежней рекомендованной розничной ценой. [02:33:02] новая рекомендованная розничная цена. Хорошо, мы можем записать это так. рекомендованная розничная цена рекомендованная розничная цена старая рекомендованная розничная цена плюс 10% от старой рекомендованной розничной цены эта рекомендованная розничная цена формула, извините, столбец там, можем ли мы Запишите уравнение следующим образом: MSRP плюс [02:33:18] 10% от рекомендованной розничной цены, чтобы мы получили увеличение Можно ли снизить цену на новый товар? поскольку мы знаем это с помощью данных тип, который мы видели в начале сегодняшнее заседание, что это не так Обратите внимание на знак процента. [02:33:34] вместо того, чтобы вводить знак процента И, э-э, отсюда мы можем это сократить до 1. А умножение мы можем сделать здесь. верно, потому что мы хотим, э-э, хотим, э-э, [02:33:46] необходимо произвести расчеты, поэтому сейчас это выглядит так. Таким образом, можно получить значение MSRP (рекомендованная розничная цена) из... столбец MSRP в отдельной строке умножьте это на 0,1 и добавить это к прежней рекомендованной розничной цене. Очень простой. Но если мы продолжим и [02:34:01] простой. Но если мы продолжим и Уменьшим это здесь, и мы получим общую сумму. уменьшить значение до меньшего версия. Итак, как только мы опубликуем рекомендованную розничную цену, мы версия. Итак, как только мы опубликуем рекомендованную розничную цену, мы умножают это на 1 + 0,1. Значение [02:34:14] мы можем просто написать новую рекомендованную розничную цену следующим образом: этот. Рекомендованная розничная цена, умноженная на 1,1. Правильный? Итак, мы это рассчитали. Вот здесь, в колонке. Итак, как же мы пишем? Этот вычисляемый столбец здесь? Итак, мы начинаем вперед и выберите прямо оттуда [02:34:30] Мы проводим отбор? Я пишу с первого числа. здесь. Хорошо, я начну с этого. из таблицы товаров. Хорошо, я Сначала выложу это. Затем я печатаю. выбрать, чтобы я не забыл, какой именно таблица, над которой мы работаем. Итак, в [02:34:45] Выберите здесь, сначала нам нужен идентификатор продукта. Вот он, код товара. И Я переименую это здесь в название «продукт». ИДЕНТИФИКАТОР. Сразу после этого все просто: что мы делаем? Ищем запятую, нам нужно название продукта. Также там есть, так что это имя, давайте возьмем [02:35:01] Это здесь только название, поскольку это Идентификатор продукта должен совпадать с названием продукта. Идентификатор продукта должен совпадать с названием продукта. Также после названия продукта укажите желаемую рекомендованную розничную цену (MSRP). Также после названия продукта укажите желаемую рекомендованную розничную цену (MSRP). Это рекомендованная розничная цена, но это старая рекомендованная розничная цена. [02:35:14] Это рекомендованная розничная цена, но это старая рекомендованная розничная цена. Давайте назовем это здесь старой рекомендованной розничной ценой. Столбца не существует. Это расчет. Итак, мы записываем расчет. [02:35:28] здесь. Как записать этот расчет? Мы получаем здесь рекомендованную розничную цену и запрашиваем ее... умножьте это на 1,1. Вот что мы Видел там. Теперь всё это расчет, который мы включаем в себя Здесь скобки, и мы так это называем [02:35:43] Здесь скобки, и мы так это называем Название в качестве новой рекомендованной розничной цены. Укажите новую рекомендованную розничную цену. Верно? Я обязательно сообщу об этом. Я начну с этого. Я начну с этого. Смотрите, здесь у нас есть идентификатор продукта и его старое название. [02:35:57] верно Я также займусь его благоустройством. Я также займусь его благоустройством. Вот, я сейчас же продолжу. [02:36:15] вы можете выбрать любое имя, какое захотите. не обязательно придерживаться только этих имен. вы можете дать любое другое имя, которое вы хотите. Обратите внимание, что я не использую двойные кавычки. Здесь я пишу одинарные кавычки. Хорошо. Помните об этом всегда, посмотрите, сколько их. [02:36:29] Обратите внимание, какие ссоры у вас возникают. 110 рядов справа. Таким образом, мы извлекаем каждое число здесь каждое и Здесь каждый ряд. И это построчно. расчет. Мы производим расчеты для каждое значение в каждом [02:36:45] столбец. А вы видите какую-нибудь разницу? между О, э-э, разница в Формат старой и новой рекомендованной розничной цены? Да, здесь нам тоже нужны два знака после запятой. [02:36:59] Да, здесь нам тоже нужны два знака после запятой. Как получилось, что здесь всего два знака после запятой? Мы отбрасываем остальные десятичные знаки. здесь. Правильный. Мы завершаем. Итак, Здесь функция — округление. Здесь функция заключается в следующем: круглый. [02:37:13] И мы это скажем, а затем продолжим. Мы Поставьте там запятую и поставьте две. Сейчас Как только мы выполним это действие, мы получим две точки после запятой, верно? Да. Наши функции заключаются именно в этом. аналогично Excel. Вы этого не найдете. [02:37:30] очень далеко оттуда. Вам нужно получить Средняя цена только на винтажные автомобили. Вы найдете старинные автомобили в столбец "Продуктовая линейка" в таблице товаров. [02:37:43] столбец "Продуктовая линейка" в таблице товаров. Столбец «Продуктовая линейка» в таблице товаров. Цена означает среднюю рекомендованную розничную цену. Получите средняя рекомендованная розничная цена. Хорошо. Но только для [02:37:58] винтажные автомобили. Винтажные автомобили — вот как это называется. продукт, который находится под столбец продуктовой линейки. Итак, если я вам покажу столбец продуктовой линейки. Итак, если я вам покажу Здесь представлена ​​таблица товаров. [02:38:19] винтажный автомобиль. Видеть Хорошо, регистр не имеет значения. Ты Можно написать как угодно, только орфография. Должно быть похоже. [02:38:33] Это главный вопрос, все правы. Так Первое, что всегда можно понять из Первое, что мы всегда выясняем, это от верно. Итак, что нам следует написать впереди? отсюда продукт, о котором нам известно [02:38:49] что. Что будет дальше отсюда, и что будет вторым? Что вы будете искать? Чего мы хотим? в выходных данных? Чего мы хотим в выход? Мы хотим средний результат. выход? Мы хотим средний результат. В среднем чего? Среднее значение рекомендованной розничной цены. [02:39:04] Это тоже нормально. В остальном, делайте У нас есть еще какие-либо требования? У нас есть Средняя рекомендованная розничная цена из таблицы товаров. В чём заключается третье требование в данном случае? Делать У нас есть еще какие-либо требования? Верно? Мы Хочу отфильтровать только винтажные автомобили. [02:39:19] Как задать фильтр? Пункт "Где". Но на каком именно пункте здесь В какой столбец мы хотим применить фильтр? Как называется эта колонка? Где мы Хотите применить фильтр? Мы должны дать Название столбца, верно? [02:39:37] Потому что именно эта линейка продукции Включает в себя винтажные автомобили. Так вам будет легче писать. Итак, если мы наберем и выберем [02:39:53] сейчас. Итак, мы перемещаемся сюда. Выберите правый В поле "Выберите здесь" мы хотим рассчитать средний. Давайте рассчитаем среднее значение. В среднем чего? В среднем чего? Где указана рекомендованная розничная цена? Из продукции [02:40:07] Вот здесь, за столом. Это таблица товаров. Мы хотим подать заявку Это таблица товаров. Мы хотим подать заявку фильтр. Мы будем применять там, где там, в производственной линии. Линейка продукции Чему это равно? Винтажные автомобили. Итак, мы [02:40:23] можно просто набрать «винтажный». Здесь машины. Сначала проверьте орфографию в в режиме реального времени, а затем введите название винтажных автомобилей. здесь. Да, именно так. здесь. Да, именно так. Однако это лишь средняя рекомендованная розничная цена. Этот [02:40:37] Здесь указана лишь средняя рекомендованная розничная цена. Мы Можно ли правильно ввести имя? И Обратите внимание, здесь слишком много десятичных знаков. Итак, подведем итог. Поэтому мы округлим это отличается от среднего значения. Округлим до двух знаков после запятой. [02:40:52] там, а здесь укажите подходящее имя. Так Это средняя рекомендованная розничная цена. Это средняя рекомендованная розничная цена. Итак, мы дали Собственное имя также здесь, и у нас есть [02:41:04] округлите это. После того, как мы округлим, дадим собственное имя. Посмотрите, как это выглядит. лучше. Но эти данные нам ничего не говорят. Это для винтажных автомобилей. Итак, что мы можем сделать? Здесь можно поставить запятую. И мы можем попросить его получить название [02:41:19] также и ассортимент продукции. И когда мы приступаем к выполнению Здесь мы видим, что здесь указано одно-единственное имя. написано потому, что там есть фильтр. Да. Потому что нам нужен всего один выход. здесь. Это один-единственный числовой результат. У нас здесь всего одно число. [02:41:34] В процессе очистки данных я... переопределила функцию среднего значения. Да, [смех] Такое случается. Хорошо. Если вы выбираете Выберите это из выпадающего списка, хорошо? вы получите, вы замените [02:41:49] будущие или уже написанные значения там. Так что вы делаете следующее: Вы все округляете до рекомендованной розничной цены, верно? Так У вас возникнут ошибки, и очень другой результат. У вас будет несколько винтажные автомобили, и каждый ряд будет [02:42:03] выйти, потому что прямо сейчас мы просим вам нужно рассчитать среднее значение. Что такое там производится расчет. Итак, если среднее значение Его там не будет, оно просто исчезнет. и извлечь каждую строку. Нет, агрегирование не производится. Наблюдать [02:42:17] что во всех трех условиях и все условия, которые мы наблюдали вчера мы просто двигались вперед и фильтрация по одному условию. Мы отфильтровываю только по одному параметру. состояние. [02:42:30] верно? В таблице заказов здесь, если я попросим вас сделать это и получить только то, что вам нужно. заказы, хорошо, которые приостановлены, которые Приостановка работы. Что вы будете делать в таком случае? Так, [02:42:43] Теперь у нас будет два условия. Мы говорим, что я хочу получить заказы. которые были размещены после первого месяца 200 пятилетних, и они должны были бы иметь и Статус товара: "Отправлено". Давайте начнём Статус отправки здесь и [02:42:57] Статус "отправлено". Итак, что же нам теперь делать? Здесь у нас два условия. здесь. Итак, как же нам попросить SQL выполнить необходимые действия? и, э-э, дайте нам два условия или фильтра. Данные получены в двух условиях. Это Здесь вступают в действие логические операторы, а именно: [02:43:13] и или и между. Здесь находится ваш В дело вступят логические операторы, то есть и или и между. Что и что мы будем делать здесь? Это поможет нам найти двух. или больше условий. И что же мы сделали? Слышали об этом или слышали об этом где-то? Я уверен [02:43:27] мы слышали об этом или в между. Не в SQL, а где-то ещё. Если вы из инженерного факультета или просто... Вы всегда могли освоить Excel, когда мы это делали. [02:43:39] слышал об этих условиях и/или в между и в общих случаях мы также делаем использовать это в общем, как я хочу Apple а манго с рынка получают яблоки или манго с рынка есть разница, верно, поэтому в целом мы тоже [02:43:53] используйте логические вентили и Excel, и в Во многих местах в повседневной жизни мы также используем и здесь сначала, так что же будет и к и это значит, что мне здесь нужны обе вещи. Мне нужны ещё яблоки, и ещё манго. Таким образом, здесь в одной строке должно быть [02:44:07] проверьте это в каждом отдельном случае. в конце строки все условия должны быть соответствие означает, что дата заказа должна Если год был меньше 2005 года, то этот статус должен быть... [02:44:20] должны быть отправлены в соответствии с обоими условиями. Все строки должны совпадать. Так Давайте посмотрим, как у нас пойдут дела. напечатать это здесь. Так что мы получим То же самое и здесь, какие были заказы? размещено. Давайте сразу перейдём к делу. [02:44:44] и статус - корабль. Как мы пишем? это? Таким образом, мы знаем, что это отборный вариант. Давайте разберемся с самого начала. Итак, из У нас есть заказы, верно? Что нам здесь нужно [02:44:57] в таблице заказов. Итак, давайте приступим к... номер заказа запятая у нас есть дата заказа Именно это мы и ищем, и Статус "отправлено", поэтому мы здесь до... Здесь все в порядке, теперь мы продолжаем. тип где [02:45:11] Теперь внутри, где первое условие состоит в том, что дата нашего заказа должно быть после 1 марта 2005 года. Теперь мы умеем печатать. Это не требует объяснений, вот оно. ещё один вариант, ещё один здесь. И так [02:45:28] мы печатаем здесь и задаем этот вопрос сейчас. Ваш статус должен соответствовать статусу "смена". Этот корабль, о котором мы пишем, — это чисто... Нет, регистр не учитывается. Вы можете печатать [02:45:40] Сделайте так, как вы хотите. Орфография должна быть правильным. Теперь, если я продолжу... Выполните это прямо сейчас, смотрите, вот что у нас получится! Оба условия совпадают. Оба Оба условия совпадают. Оба Условия совпадают. [02:46:00] Он здесь и помогает нам двигаться вперед. получить разрешение, проверить два условия в один-единственный заказ. Итак, если я продолжу... Проверьте это, вот как это выглядит. Ты доставляют мне заказы, которые размещено после 1 марта и статус [02:46:15] размещено после 1 марта и статус отправлено. Но теперь мне нужны заказы. отправлено. Но теперь мне нужны заказы. который был размещен после 1 марта и проверить наличие проверки статуса должно быть равно кораблю [02:46:30] должно быть равно кораблю и решено. Так что, независимо от того, является ли штат... так Статус должен быть "отправлено" и "решено". Итак, как видите, здесь есть Итак, как видите, здесь есть Э-э, статус вроде "решено" здесь. Хорошо. [02:46:50] Таким образом, нам нужны строки обоих типов. Здесь есть и сдвиг, и разрешение. Как нам это получить? Почему мы используем оператор «или»? Давайте разберемся. Разум заключен в одном [02:47:03] В одной строке не может быть и того, и другого одновременно. Итак, у нас есть напишите здесь, чтобы это Проходит по каждой строке и проверяет, есть ли там что-нибудь. Отправлено или решено. Поэтому я скопирую и Вставьте сюда именно это, и что? мы печатаем мы печатаем или. [02:47:20] мы печатаем мы печатаем или. Таким образом, здесь статус равен Таким образом, здесь статус равен Статус равен результату. дата этого заказа больше 1 марта 2005 год? Оно держится [02:47:38] 2005 год? Оно держится Со статусом "отправлено" или "решено"? Все ли заказы оформлены после 1 марта? 2005 год? [02:47:54] Все ли заказы будут оформлены на более поздние даты. 1 марта 2005 года, всем привет! Да или нет? 2003 год находится в первом ряду. Вам не нужно всё, что вышло после 2005 года, март 2005 года. [02:48:10] всё, что вышло после 2005 года, март 2005 года. конкретно. У вас январь 2005 года. Ноябрь 2004 г. Октябрь 2003 г. Дата заказа не соответствует действительности. больше. Да. Поэтому, когда мы пишем [02:48:24] Или здесь есть какое-то условие, верно? И В данном случае дата заказа указана. быть выброшенным из окна. Почему? Потому что сейчас это в центре внимания. или что происходит или есть получить привилегию. Итак, сначала это [02:48:41] разрешая ИЛИ, и тогда это разрешение и поскольку и не может быть Проблема больше не решена. Оно не держится. больше не буду использовать этот фильтр, потому что что Мы пишем здесь, если все в порядке. преемственность. Мы говорим: проверьте [02:48:54] Дата заказа и смена. После этой проверки для или. Итак, что же здесь произошло? для или. Итак, что же здесь произошло? взял всех этих двоих, как будто они здесь, и тогда выполняется проверка, или статус равен результат. Так что это проблема. Так что же мы... [02:49:11] Необходимо, чтобы дата заказа была следующей: Неважно, будет ли это отправлено или нет. Решено правильно, это должно произойти после марта. 2005 год. Поэтому нам просто нужно двигаться дальше и... Включите это в скобки. Как только мы это сделаем, теперь мы это поймем. [02:49:27] Окей, вы хотите, чтобы это было правдой? всегда, и мне нужно проверить, так ли это. всегда, и мне нужно проверить, так ли это. или вот это. Вот что нам нужно. Этот Так мы пишем. Итак, как только вы его сохраните внутри скобок вот что будет написано [02:49:42] Проведите сравнение между ними. Это будет применяться только между ними два. это не будет применяться или с указанием даты заказа. Так что, когда вы захотите отдельный. Когда вы хотите, чтобы что-то было Если это справедливо по отдельности, просто продолжайте в том же духе. [02:49:57] внутри скобок. Теперь двое Условия идеально совпадают. Хорошо? Просто продолжайте в том же духе. скобки вокруг него, и это будет скобки вокруг него, и это будет решено. [02:50:14] Здесь написано, пожалуйста, посмотрите Здесь экран. Хорошо, найдите продукт, у которого Рекомендованная розничная цена превышает 100, но меньше 180. Сколько здесь условий? Два условия. Итак, если у меня есть и оба Условия должны совпадать. Так должно быть [02:50:28] больше, чем также, и ниже 180 также. Здесь должны совпадать оба условия. Здесь должны совпадать оба условия. Поэтому мы можем использовать здесь и . Итак, начнём с... Дальше будем разбираться. Итак, из продукт. Итак, это информация о товарах. [02:50:44] И сейчас мы рассматриваем продукт. Здесь мне не нужны все столбцы. Итак, мы Здесь мне не нужны все столбцы. Итак, мы Здесь можно получить список столбцов для выбора в цикле. Давайте получим название продукта. Код товара, а вот и рекомендованная розничная цена. [02:50:58] Это именно то, что мы ищем. Теперь мы Вставьте туда слово "where" Это рекомендованная розничная цена (MSRP). MSRP выше. чем 100. Так что мы можем смело печатать. чем 100. Так что мы можем смело печатать. больше 100 и снова рекомендованная розничная цена, потому что [02:51:14] Существуют два условия. Таким образом, рекомендованная розничная цена ниже. меньше 180, меньше 180. Это произойдет меньше 180, меньше 180. Это произойдет Посмотрите здесь на рекомендованную розничную цену (MSRP) в диапазоне от 100 до 100. и 180. Так что же нам нужно? числовой диапазон. Поэтому всякий раз, когда у нас возникает [02:51:28] между Мы можем подать заявку отсюда. Вместо и здесь мы можем это записать между. Как осуществляется ввод текста между строк? Итак, вот это Многое останется неизменным. Этого будет достаточно остаются похожими. После рекомендованной розничной цены мы просто [02:51:44] Введите здесь, и мы напишем MSRP. должно быть в диапазоне от 100 до 180. Таким образом, между нельзя использовать без и мы Типы 100 и 180. Да. Теперь в обоих случаях В данном случае ответ будет следующим: [02:51:58] Семь. Ответьте мне сейчас. Мы ли это? включая 100 и 180, когда мы Фильтрация с помощью функции `and` здесь? Включаем ли мы число 180 при наборе текста? и здесь прямо сейчас мы не включаем Здесь можно установить верхний и нижний пределы, если захочу. [02:52:12] Для этого мы можем написать «равно». Если я захочу это включить, я это сделаю. Если ввести текст, равный здесь, то я... включая верхний и нижний предел, что означает У меня есть выбор, а это значит, что у меня есть Здесь выбор работает как в Excel, а не как в Excel. [02:52:27] язык программирования, как вы уже видели Прежде чем оно начнет работать как Excel, оно должно... вернуться назад, каждый раз переходя к каждому столбцу Отфильтровать что-либо. Поэтому нам нужно напечатать Рекомендованная розничная цена равна, когда мы разговор между всеми между [02:52:41] Верхний и нижний пределы устанавливаются автоматически. включено. Верхний и нижний предел в Диапазоны включаются автоматически. Поэтому, когда вы используете between и here, это будет включать как верхний, так и нижний предел. Итак, это ваш промежуточный вариант, и он будет... [02:52:57] Итак, это ваш промежуточный вариант, и он будет... Включено автоматически. У нас нет Здесь ровно 100 или 180. Поэтому мы не можем Видите разницу? Да, это работает так: Видите разницу? Да, это работает так: что. Итак, это и между ними [02:53:13] Это разница между и и решите это [02:53:28] Нажмите здесь и посмотрите на написание. Здесь первым. Видите, всё правильно? Логика такова: Абсолютно верно. [02:53:41] Мы говорим о клиентах. Здесь, верно? Поэтому, конечно, мы этого не хотим. выбирать все у клиентов, но Мы с нетерпением ждём ответа от клиентов. Мы с нетерпением ждём ответа от клиентов. прямо здесь. [02:53:59] Давайте выберем несколько столбцов. Так клиенты, э-э, это имя клиента. И давайте добьёмся успеха в стране, вот что мы сделаем. ищут клиентов и взаимодействуют с ними. Так Нас это устраивает, но мы не хотим Конечно, мы не во всех странах. [02:54:12] хотим выбрать все страны, которые нам нужны немного. Итак, мы воспользуемся всеми функция здесь, потому что в каждой строке мы будем Проверяйте информацию по отдельным странам, а не по всем. Так А теперь нам нужно сказать... то есть, где страна равна [02:54:26] то есть, где страна равна Допустим, здесь США, или страна равна И снова нам нужно это напечатать. снова. Почему? Потому что этот SQL-запрос здесь будет рассматривать эту страну как три отдельные столбцы. Лечение этого не предусмотрено. [02:54:39] в виде одной единственной колонки с несколькими фильтры. Поэтому каждый раз это будет происходить. и проверьте это, проверьте это по мере того, как это происходит. Вперед, проверяю наличие следующей колонки. прямо здесь. Поэтому, когда вы это пишете Здесь регистр не имеет значения, но вы [02:54:52] нужно убедиться, что орфография правильная Абсолютно верно. Поэтому нам нужно идти. вперед и наберите или или и, конечно же, вы Здесь вы найдете правильный ответ, а именно: Собираюсь увидеть США, Францию ​​и Австралия, это 53 ряда. Хорошо, [02:55:05] Здесь 53 строки. Так что, если ваш Орфография правильная, вы получите 53. отвечать. В большинстве случаев вы будете допустил ошибку в написании слова "э-э" Австралия. Но представьте себе, что если бы вы Необходимо проверить 10 условий. Что, если [02:55:19] если вам нужно проверить 10 условий тогда в одном столбце это будет Напечатать будет слишком сложно. мы будем допускать ошибки при наборе текста орфографические ошибки прямо здесь, потому что у вас есть проверять, писать, копировать и вставлять. [02:55:32] Итак, в это время, поехали! Давайте выберем здесь оператора. Что здесь подразумевается под оператором? в операторе Что здесь подразумевается под оператором? в операторе это поможет нам предоставить полный список по адресу [02:55:46] одно место. Таким образом, оператор действует как или верно. Итак, если я наберу текст оператор здесь, внутри этого мы можем пойти и запишите весь список и что именно. Это приводит к отображению столбца «Страна». и проверит список, если что-то есть. [02:55:59] один из них присутствует. Так что это автоматически работает как странный механизм, но это так. Удобно писать. Как напечатать n? Здесь оператор? Итак, мы начнём с... Читайте дальше, а статью можно найти здесь. Спереди В столбце мы пишем n, а внутри здесь [02:56:12] мы сейчас введем здесь значение один значение запятой два и значение три. Так что, если это текст, мы Напишу внутри кавычек. Если это так Это не текст, мы просто оставим его как есть. является. Вот как работает оператор in. [02:56:28] является. Вот как работает оператор in. оператор помогает нам, э-э, помогает нам, помогает нам чтобы правильно ввести здесь фильтр. Так Здесь ситуация останется точно такой же. а после названия страны мы просто введем а внутри Индии мы можем предоставить [02:56:43] весь список. Так вот, это наши США. Скопирую и вставлю сюда, расставив запятые. Франция здесь? И теперь это здесь, в Австралии. Поэтому у нас нет или, опять же, нам не нужно печатать страна равна мы напечатаем это только [02:56:56] Один раз, и нам не нужно ничего печатать. больше. N автоматически принимает участие в И еще у нас остались 53 корня. прямо здесь. прямо здесь. Таким образом, эта переменная n фактически работает как [02:57:09] Таким образом, эта переменная n фактически работает как множественный или подобный n оператор, подобный оператор. У нас также есть любой оператор или оператор любой все существует. У нас есть И это тоже. Сейчас мы сосредоточимся на n. Итак, давайте посмотрим. [02:57:23] за столом для сотрудников прямо здесь. В Что у нас есть на столе у ​​сотрудников? Мы Что у нас есть на столе у ​​сотрудников? Мы У меня есть номер сотрудника, адрес электронной почты и название офиса. код и должность. В названии должности Здесь находится колонка, есть ли у нас менеджеры? Только [02:57:36] Менеджер ввода текста работать не будет. Почему? Потому что нет ничего, что было бы в точности таким, каким оно есть. Здесь это равнозначно менеджеру. Итак, мы В данный момент я не пытаюсь выяснить... точная фраза внутри точки данных. Правильный? Что мы пытаемся выяснить [02:57:50] Правильный? Что мы пытаемся выяснить является частью части строки. Мы пытаемся отфильтровать строки. из той части строки. Итак, мы хотим где бы ни был указан менеджер вся фраза во всей этой строке [02:58:05] где бы ни был написан текст о менеджере, основанный на Убедитесь, что вы правильно отфильтровали эту строку. Так В данном случае здесь нет равных Операторы сравнения будут работать. Это где сравнение, вот где Вступает в игру подмена. Вот тут-то мы и пригодимся. [02:58:21] Вступает в игру подмена. Вот тут-то мы и пригодимся. имеют козыри в рукаве. Дикие карты активируются при одинаковых условиях. оператор. Поэтому всякий раз, когда мы хотим использовать Здесь есть джокеры, и мы хотим получить небольшой участок струны вытянут, мы сначала [02:58:36] активировать оператор «Нравится». Итак, в Как и у оператора, здесь есть две вещи. Мы можем с этим работать. Один из них — процент. знак, [02:58:50] — это знак подчеркивания. Что это такое? процент? Знак процента здесь обозначает переменная здесь, которая у вас будет переменная... что здесь следует сказать? у вас должна быть переменная переменная буквы, буквы и символы справа и [02:59:06] Эта буква здесь просто означает "фиксированный". число фиксированное количество мест фиксированное количество букв или блоки [02:59:18] Что это вообще значит? Давайте Понимаете, если я продолжу, я это сделаю. Введите здесь процентное значение страницы после например, в процентах, я продолжу. и тип менеджера тип менеджера что делает Это значит, что здесь это означает, что если я [02:59:32] печатаю, если печатаю процент процент до менеджер, поэтому мы общаемся с SQL, который видит эту фразу, должен [02:59:44] вся фраза или вся строка должны конец менеджером и до менеджера менеджер может столкнуться с любым количеством переменных там. Любое количество переменных может быть написано там. Так что это может быть письмо, а Символ или пробел, здесь может быть что угодно. [03:00:00] но это следует сделать до прихода к менеджеру. Если мы Давай, напиши это, хорошо? Вот менеджер, и если я введу процент впоследствии. Таким образом, мы общаемся с SQL, что эта конкретная точка данных должно начинаться с M и JR и заканчиваться на [03:00:15] Что угодно может закончиться чем угодно. Могут быть свободные места и любое их количество. Переменные — там будет всё что угодно. Если мы сначала напишем проценты, то... а затем менеджер, а затем процент Повторюсь, мы просто говорим, что в [03:00:30] где-то посередине э-э всей фразы, этой конкретной Там должны быть слова. Это не имеет значения. с чего это начинается и чем это заканчивается. с чего это начинается и чем это заканчивается. Хорошо, это в процентах. [03:00:45] Это в процентах. Так что, если вы хотите пойти и вытащить отсюда менеджера, что нам следует использовать тогда следует ли нам процент написания и менеджер [03:00:58] или нам следует написать менеджеру и процент или следует писать процент процент менеджеров Сейчас у нас соотношение 2 к 1, вот и всё. Правильный ответ. Почему это правильный ответ? Ответ: посмотрите на этого менеджера, он где-то. [03:01:13] некоторые переменные Да, Сэм В. Это наш оператор. Давайте наймем сотрудников. Вот здесь, за столом. [03:01:37] Теперь выберите здесь все из стол для сотрудников. Давайте начнём и получить номер сотрудника и его должность Здесь от сотрудников. И теперь мы хотим Давайте добавим здесь фильтр. Так Внутри сети мы скажем, что видим, я хочу [03:01:51] Внутри сети мы скажем, что видим, я хочу установить фильтр по названию должности. Должность установить фильтр по названию должности. Должность должно быть похоже на процент. процент менеджеров. Орфография Менеджер должен соответствовать этому уровню. менеджер [03:02:03] процентное соотношение должно быть включено. внутри одинарных кавычек это выглядит так: внутри одинарных кавычек это выглядит так: То, что у нас есть менеджер, находится прямо здесь. [03:02:17] предполагается, что эти вещи нужно печатать здесь вот так: Вам не следует вводить ключевые слова. или название столбцов или название На эти таблицы я хотел бы напомнить Вам просто нужно дважды щелкнуть «ОК». Пожалуйста, дважды щелкните, не делайте этого. [03:02:31] орфографические ошибки Далее двойной щелчок пожалуйста. Да, где-то совершенно верно. Три ряда. Имеется три записи. я Хотелось бы теперь посмотреть, какой именно сотрудник... менеджер по продажам. Что я буду делать, если я... Я вижу здесь только эти три. Я хочу [03:02:45] чтобы узнать, кто эти люди. Это отлично. Иначе какой в ​​этом смысл? И увидеть здесь всего три названия? Мне нужно Эти люди всё подробно объясняют. Я хочу все пригласить их на встречу, на которой это Встреча предназначена только для руководителей. Мы [03:02:59] На самом деле следует получить имя. а также фамилия и адрес электронной почты. Список с подходящим человеком. Они позвонят этих людей и скажите им явиться по указанному адресу. где-то. Хорошо, вот что... Достаточно будет процента. Процент, где бы то ни было [03:03:13] несколько символов. Как это будет выглядеть для? Он будет искать несколько для? Он будет искать несколько символы или переменные символы. Любое количество символов должно быть там. Итак, что означает «менеджер в процентах»? [03:03:26] спереди может быть любое количество персонажей. Если мы продолжим печатать процентное значение менеджера, которое следует учитывать начинать с m и gr и заканчивать любым числом о персонажах, которые нам безразличны, и когда мы сначала пишут проценты, а затем [03:03:40] Здесь под процентом понимается начало и конец. мы можем иметь любое количество нескольких переменные символы вот что Теперь переходим к проценту. знак подчеркивания всем, вот он Вот он, знак подчеркивания. [03:03:54] фиксированное количество букв, или, можно сказать, фиксированное количество символов, что имеется в виду? Если я задам здесь фиксированное количество символов, то... это значит, что если я продолжу печатать Подчеркнуть один раз, если я все-таки наберу текст. Здесь один раз нижнее подчеркивание, так что, по сути, мы [03:04:09] просят дойти до одной буквы. Так если я все-таки напишу это там там должно быть две буквы, а затем... Если там будет буква О, то будет Здесь должна быть еще одна буква. Так Мы ищем письмо, возможно, это оно. [03:04:25] от. Таким образом, оно может содержать только один символ. Так Это нижнее подчеркивание. Это подчеркивание. Здесь одна буква. Это О что-то, что должно быть образцом, мы являемся Ищу закономерность. Так что все в [03:04:39] Ищу закономерность. Так что все в весь столбец все точки данных следуя этой схеме, мы имеем третий символ, обозначенный как O, будет извлечен. отфильтровано или удалено. Вот что из этого следует Подчеркивание означает. Это значит один значит один [03:04:54] характер. Один означает один символ. Один означает один такой символ. Да, ты Можно использовать и комбинацию, верно? Но В большинстве случаев это что-то, что мы используем. Это то, чем мы пользуемся. верно? Давайте рассмотрим пример. [03:05:06] Давайте рассмотрим пример. Для некоторых причина, скажем, по какой-то причине, скажем так, Допустим, мы хотим продолжить и найти клиент, чье имя начинается с буква М. Чье имя начинается с буква М и должно иметь ровно три [03:05:22] и должно быть ровно три символа. персонажей. Поэтому нам нужен клиент, который не только начинается с буквы М, но и должно Имеют ровно три символа. Итак, как мы Напишу это здесь. К Напишите это здесь, мы должны продолжить. [03:05:37] Напишите, что начинается с буквы М. И это должно быть Здесь ровно три символа. Так Я сейчас напишу два подчеркивания. Здесь указатели. Я напечатаю два. другой. Как это будет выглядеть? Когда вы это набираете? Похоже, это одиночный [03:05:51] строка, но есть два символа подчеркивания прямо здесь. Итак, это М, и это в точности так. Всего три персонажа. Итак, давайте Посмотрим, есть ли у нас похожие имена. Посмотрим, есть ли у нас похожие имена. Итак, я выбираю это, это наш. [03:06:06] Итак, я выбираю это, это наш. от клиентов. Давайте выберем клиента Имя здесь. Хорошо. И давайте [03:06:20] Посмотрите, есть ли там какие-нибудь имена. так. И снова сначала свяжитесь. так. И снова сначала свяжитесь. Имя похоже на букву М и содержит два знака подчеркивания. здесь У нас всего один человек, если я продолжу, я [03:06:35] поставьте здесь еще один знак подчеркивания Всего будет четыре персонажа. Для четырех персонажей вы увидите больше Ответы здесь, вот как это работает. Вот как это работает в целом, вы увидите Не нахожу много других вариантов применения, кроме... [03:06:50] распознавание образов, если вы ищете для строгого распознавания образов тогда это будет полезно, иначе большая часть менеджер времени будет иметь в руках то, что Процентная составляющая будет очень полезна. потому что если мы просто хотим первый [03:07:02] буква, начинающаяся с буквы М, мы могли бы иметь написано в виде буквы М и процента. этого будет достаточно, поэтому после m любого числа может быть любое количество слов Там могут быть персонажи, так что если я продолжу и напишите здесь [03:07:17] и напишите здесь M с указанием процента M с указанием процента здесь теперь буквы "uh" после "uh" не иметь значение. Видеть, знаки подчеркивания и проценты. А теперь вперед, берите. [03:07:33] Это ещё один способ установить фильтр. джокеры. Каждый, Мы уже однажды это здесь делали. Мы Требуется из стола заказов. Мы Начали с этого. Поэтому мы хотели получить номер заказа, дата заказа и статус. [03:07:47] номер заказа, дата заказа и статус. где дата заказа — 2004 год. А затем мы где дата заказа — 2004 год. А затем мы Они получают и функционируют здесь. Итак, сейчас нам нужна дата заказа. с января 2004 года. Поэтому я это меняю. [03:08:01] с января 2004 года. Поэтому я это меняю. до января 2004 года. Так что здесь все в порядке. Но впоследствии здесь задается вопрос о том, что р. Итак, мы напечатаем здесь, но после n Они либо находятся в процессе отгрузки, либо на держать. [03:08:15] Итак, теперь перейдём к использованию n. оператор, потому что нам нужно использовать здесь или вместо того, чтобы писать или несколько раз Здесь после добавления мы скажем, что идите и Здесь после добавления мы скажем, что идите и проверить статус, и здесь мы пишем [03:08:28] Давайте наберем m sh и обработаем или код и мы это здесь печатаем, чтобы убедиться, что мы в одинарных кавычках прямо здесь [03:08:42] Теперь нам не нужно печатать или что-либо еще. можно просто напечатать весь наш текст. Помните. что лишних мест нет. Да, мы Мишель, ты тоже можешь так писать. Так, Давайте проверим. Есть ли у нас какие-либо ответы? здесь? Да, конечно. [03:09:00] У нас тут смена. Завершение процесса или конечный процесс, а не Все проверяется. Это тот, что для вирджинийских университетов. Это пост. консультант. Теперь давайте поищем второй. Второй шаг — это привлечение клиентов. [03:09:15] чье имя начинается на букву А или В, и они Они из Германии. вне. Я понятия не имею, есть ли у нас какие-либо. Такие строки или нет. У нас их двое. [03:09:29] Такие люди. Замечательный. Вот оно. вопрос. Эм, хорошо. Извлечь вопрос. Эм, хорошо. Извлечь клиенты, чьи имена начинаются с буквы А или В. И они из Германии. Так что же вы видите? вы все применяете фильтр к [03:09:44] разные колонки, верно? Кто-то... э-э Немногие из вас применяют этот конкретный метод. фильтр по имени клиента, которых у вас немного. выбранное имя контактного лица клиента В обоих случаях вы получите ответы. Вы можете получить один ряд или два ряда. [03:10:00] Вы можете получить один ряд или два ряда. Например, если я возьму вот это... вот это первый, который я получу, если возьму это. Решение прямо здесь. Итак, это имя клиента и страна. от клиентов. После страны и [03:10:15] Германия, мы печатаем, и теперь нам нужно... могут передавать друг другу, как начиная с А или начиная с В. Итак В данный момент мы используем здесь имя клиента. [03:10:27] имя прямого клиента первый И вот, теперь здесь два человека. Если Вместо имени клиента я напишу следующее. и использовать имя клиента, которое [03:10:39] Сначала напишите имя, затем ответ будет. различаются. Поэтому для этого я возьму следующее: Второе решение, которое я нашел, смотрите здесь. у нас есть контактное имя было у нас есть контактное имя было Снято здесь. Видите, логика та же. [03:10:54] Таким образом, оба ответа верны. Хорошо, давайте рассмотрим это подробнее. множество различных типов функций здесь. Основные типы функций, которые мы Здесь находится текстовая функция, дата. функции, условные операторы, такие как [03:11:08] функции, условные операторы, такие как Э-э, FLS, и дело, и когда. И здесь Мы также будем искать нулевые значения. Первое, чему мы научимся, это Речь идёт о строковых функциях. Они также называются текстовыми функциями или простыми [03:11:20] персонажей. Верно? Какие типы строк Какие функции мы уже рассмотрели? Если вы функции. Если вы знакомы с Tableau или Существуют некоторые похожие языки, вы Я видел там текстовые функции. Для Например, существует текстовая функция, которая называется [03:11:35] как верхняя часть. Что оно делает? Это продолжается и преобразует письмо меньшего регистра в прописная буква. Аналогично, у нас есть... э-э, мы называем... [03:11:48] ниже. Что оно делает? Это приводит к прописная буква, преобразует это в строчная буква. Это верхняя и нижняя части. Ещё один пример — длина. просто укажет длину [03:12:02] Внутри это даст нам длину нить. У нас есть еще одна функция, которая называется в качестве отделки. Какая отделка подойдёт? Обрезка будет Удалите лишние пробелы. Оно уйдёт один пробел. Это позволит избавиться от всего лишнего. пробелы, если они написаны перед или [03:12:18] после строки или символов. Так если у меня где-то написан адрес и если кто-то оставил слишком много места между строкой адресов первая и строка тогда от этого избавятся. Скоро аналогичной основы у нас есть еще одна [03:12:31] обеспечить регресс. Обратное действие изменит направление... точка данных. Сервисная строка просто извлечь несколько слов из всей строки Это строка с указанием сервиса. Хорошо, эти есть несколько очень распространенных состояний, э-э, текст функции находятся прямо там. А вы как думаете? [03:12:47] Можете ли вы назвать какую-либо другую функцию? Какой из этих методов очень часто используется в текстовых функциях? У нас есть левая и правая функции. Левый Возьму несколько персонажей. слева направо. Правильно пойдёт дальше и получит несколько персонажей справа. Вариан — это [03:13:01] Да, у нас есть соответствующий тип данных для ввода. Excel. Наиболее распространенный из них, который вам понадобится Excel. Наиболее распространенный из них, который вам понадобится ever see is concatenate or concat. Большинство Это обычное явление, которое вы там увидите. Что Функция concat делает это? Конц кот продолжит в том же духе. [03:13:15] Функция concat делает это? Конц кот продолжит в том же духе. Оно присоединится. Да, это соединяет струны. Очень хороший. Оно может соединять два или более соединяет нити вместе. Оно их объединяет. Так Давайте рассмотрим пример. Например, мы снова подойдёт к столику клиента. Так [03:13:28] Я снова получаю сообщения от клиентов. Так Это информация от клиентов. Напишите ещё раз. Теперь здесь находятся клиенты. Смотрите, у нас есть контактное имя и фамилия. имя. Мы хотим написать это вместе. Так Здесь я снова воспользуюсь функцией выбора. [03:13:43] При выборе того, что мы хотим сделать в первую очередь, я Номер клиента, конечно же, будет получен. запятая получить имя клиента это имя поставщика, компании и внутри Эта компания, вот наше название Spark. Итак, теперь мы набираем команду concat. [03:13:59] Вот и конкатенация, все видят. Вот эта функция — конкатенация. функция внутри этой функции конкатенации I Я просто попрошу вас теперь объединить данные. имя запятая фамилия Я собираюсь Назовите это здесь как полное имя. Хорошо. [03:14:21] здесь. Когда я применяю конкатенацию Здесь функция, посмотрите на столбец "полный". Здесь функция, посмотрите на столбец "полный". Назовите и скажите, это что-то вроде результата? правильный? Можете просто взять и продолжить? Передать этот результат кому-нибудь другому? [03:14:35] Это возможно? Есть свободное место. Видеть Здесь у Карен достаточно места. Джанин здесь Здесь у Карен достаточно места. Джанин здесь Здесь есть место, а у Диаго есть место. У Йонаса здесь есть место, но не во всех случаях. Почему? Почему так бывает? Почему у некоторых имен есть буква " [03:14:52] Пробел в некоторых именах не нужен, потому что если я добавлю Теперь в этом пространстве они каким-то образом собираются... Теперь в этом пространстве они каким-то образом собираются... есть лишние пробелы, верно? Так что мало, если я Добавьте сейчас немного места, и у немногих останется лишнее. места, так скажите мне, почему у нас есть лишние? [03:15:06] здесь места Сначала выясните, почему это происходит. Выглядит вот так? Почему это происходит? Потому что когда кто-то обновлял данные, верно? Они написали первый имя или фамилия, и по ошибке [03:15:21] они добавили дополнительные места либо до этого или после этого. Так что либо имя или фамилия - это дополнительные слова. пробелы до или после них. Из-за именно поэтому у нас здесь и происходит дополнительные места. Поэтому нам нужно двигаться дальше и [03:15:35] Сначала удалите лишние пробелы, а затем добавьте необходимое пространство. Итак, первое, что мы Для этого мы используем здесь функцию обрезки. Совершенно верно. Поэтому я пойду. вперед и тип обрезки. Итак, что же это такое? Проблема с функцией обрезки здесь, в э-э... [03:15:50] SQL? Нам нужно приступить к обрезке. функция в имени столбца драгоценного камня здесь. Мы не можем просто взять и действовать по-другому. охватывать обрезку э-э для всего э-э [03:16:02] конкатенация. Нам нужно приступить к обрезке Здесь указаны имена отдельных лиц. Итак, после того, как я его подстригу Здесь вы увидите, что мы сейчас делаем. не должно быть пробелов. Вот, смотрите, у меня есть Здесь применена функция обрезки, и вы можете Обратите внимание, пробелов нет. [03:16:23] после этой запятой здесь. Я напечатаю один ещё одна запятая. Сейчас у нас один... Промежуток между символами. Итак, вот мы идти. Одинарные кавычки пробел одинарные кавычки прямо здесь. Одинарные кавычки. Введите пробел. Нажмите на пробел и [03:16:38] Снова одинарные кавычки. И управление прессой входить. И видите, у нас есть полное имя. прямо здесь, с одним правильным пробелом между. Значит, у нас это уже есть. Просто скопируйте и вставьте это сюда. Здесь также можно найти полный адрес в соответствующем столбце. [03:16:52] Потому что у нас здесь есть адрес. У нас есть получил эту строку 1 2 3 4 наклон входа Итак, вы хотите получить все это по адресу... одно-единственное место, так что давайте двигаться дальше. [03:17:04] Мы хотели получить здесь то, что хотели. Давайте получим полный адрес. когда мы пытаемся получить полную адрес здесь, я уверен, что у вас у всех есть написано, что они правы, так что поехали. и напечатайте это для других тоже, так что [03:17:17] после конкатенации и получения полного имени Здесь мы снова набираем concat, но в Здесь мы хотим получить конкатенацию. адрес. Вот адресная строка. один. Это вторая строка адреса. город, коммуна, штат, запятая, почтовый индекс. [03:17:33] город, коммуна, штат, запятая, почтовый индекс. А затем у нас есть страна. смело записывайте это в качестве адреса. Пока что только один. А теперь давайте посмотрим на [03:17:45] выход. Хорошо. Когда вы смотрите на Что именно отображается здесь в результате выполнения? Это нулевые значения. значение У нас нет адреса для этих объектов. Вот что нам здесь говорит о клиентах. Итак, давайте посмотрим, не так ли? [03:17:59] Адреса Карин и Джен здесь. Давайте разберемся, что если я пойду... прямо сейчас все клиенты, и я смотрю Эти люди здесь... хорошо, разве у нас нет... Адрес для них здесь есть? Адрес есть или нет, у нас есть адрес. [03:18:15] верно, однако, когда мы пытаемся объединять его, когда мы пытаемся объединить объединять его, когда мы пытаемся объединить Вот он. Мы получаем адрес? Нет, мы получаем там нулевые значения. Почему нет? Да, Аманда. Совершенно верно. [03:18:29] Почему так происходит? Потому что Что происходит с функцией concat? Вот в чём дело. Читает это здесь. Оно читает это. здесь. Однако, как только оно достигает во втором столбце отсутствует нулевое значение, это останавливается прямо здесь и дает нам нулевое значение. [03:18:44] ответ. Так что всякий раз, когда... всё происходит присутствует всякий раз, когда в каждом столбце Если текст присутствует, он нам это дает. ответ, но как только он достигнет или ответ, но как только он достигнет или проверяет наличие нулевого значения, если оно отсутствует [03:18:59] Идите дальше, здесь всё остановится. В качестве ответа укажите null. Это значит Функция конкатенации не может обрабатывать значения null. ценности. Компания Concat не справляется с проблемой нулевые значения. Таким образом, эта конкатенация не сможет [03:19:15] работать вообще или просто потому, что так должно быть Игнорируйте нулевое значение и двигайтесь дальше. Верно? Оно не способно это сделать. Это оно На этом этапе происходит сбой. Итак, что мы будем делать? Итак, мы начнём. Нам следует знать, как найти [03:19:29] Нам следует знать, как найти нулевые значения. Как найти нулевые значения? К Здесь мы идём, чтобы найти нулевые значения. Здесь нужно использовать очень простую вещь. Мы спросим В SQL встречаются ли нулевые значения? Мы можем Просто спросите. Так что мы можем смело задавать этот вопрос. [03:19:43] Это значит, что нужно выбрать и посчитать. Что здесь нужно считать? Подсчитайте каждый столбец. Подсчитайте каждый столбец. Что бы мы ни перечислили здесь, из потока клиентов из здесь, из потока клиентов из поток клиентов, где [03:19:58] где Вам нужно считать там, где находится адресная строка. Вам нужно считать там, где находится адресная строка. один из них равен нулю или один из них равен нулю или или вторая адресная строка равна нулю [03:20:15] Адрес, город — пустое значение. и аналогично Поэтому оно попросит его пойти и... Проверьте, не содержат ли эти столбцы пустые значения. Итак, когда [03:20:31] Если мы попросим его это сделать, он нам сообщит. Да, имеется 113 нулевых значений. там. Это просто подтвердит, что да. Существует 113 значений, которые являются нулевой. Так что, пожалуйста, посмотрите здесь. Теперь мы [03:20:43] Нужно будет выяснить, как это сделать. Мы здесь имеем дело с нулевыми значениями? Итак, мы имеют нулевые значения. Отлично. Я знаю, что у нас есть нулевые значения. Итак, как же нам с этим справиться? Таким образом, существует очень известная функция. называются пои. Функция Pies — это функция, которая [03:20:56] часто используется для работы с нулевым значением. ценности. Почему? Потому что это может успешно Игнорируйте нулевое значение. Оно также может При необходимости замените нулевое значение на любой текст, число или символ. Так что кис может может использоваться как вложенная функция с [03:21:11] другую функцию очень легко. Итак, идите. а сначала правильно выполните конкатенацию. и посмотреть, как двигаться дальше и, э-э, считать нулевые значения, а затем вернитесь сюда. Это позволит продолжить обработку запросов, верно? там. Итак, для начала посмотрите вот это. [03:21:31] сейчас. Итак, как выглядят запросы? это? Синтаксис выглядит следующим образом. Итак, кюри Здесь это можно применить к любому столбцу. имя или строка сразу и после Здесь мы можем смело задать этот вопрос... либо замените его пустым местом, либо замените [03:21:45] Это можно использовать с любым текстом, цифрой или символом. Так coies всякий раз, когда он найдет нулевой уровень ценность этого просто будет реализована, что бы ни случилось. сделаю, проверю. для ненулевого значения. Если значение не В результате будет получено значение null. Если [03:21:59] Если значение равно нулю, то будет получено следующее: что бы вы ни попросили его дать в качестве замена. Так что, если хотите, можете его очистить. предоставит вам пустые две одинарные кавычки. без каких-либо пустых мест. Хорошо. Итак, давайте выясним, как это сделать. [03:22:14] 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:30] So we will ask here we will ask coies here to go ahead and check here to go ahead and check is address line one is address line one is a non-null value. If it is a non-null [03:22:44] 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, we will leave that blank. Now we type comma again. And here we will go ahead and type again for address [03:23:00] will go ahead and type again for address line two. 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, [03:23:15] I'll type comma again. Now we go ahead and check for check for the null value again that under queries if is if city is null go ahead and [03:23:29] give this as the replacement. Okay, I'm not typing anything else right now 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:48] 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:24:03] here, everywhere NA is at address line one. one. We have the city name everywhere. We do not have any null city name till now. [03:24:23] co here right now it is showing na right. Right now it is showing na everywhere. If I ask it here that simply go ahead and type a comma. Simply go ahead and type a comma with some spaces before and after. Then see how easy it [03:24:38] looks. See here how clean the output looks. Yes. So this is how polies works looks. Yes. So this is how polies works and yes it is a lot more work to type concat with quies. It does take some time. So go ahead and type concat with [03:24:54] 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 repormat this here, I will go ahead and repat it with this here. [03:25:15] follow. Now, now here when we uh now we 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. So when we are writing here concat and pois here we have to go [03:25:32] ahead and trim 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:47] here too. So yes it does get tedious to 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 [03:26:01] here. So another way here is to use another function called as concat WS. 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. [03:26:16] separator? So let's see something here. This is here is uh uh city name right one. So somewhere we have address line one two and city name two. So now what is happening here is we are not giving [03:26:28] any separator here. If we want we can. So after every comma here we have the choice to give any separator that we want. We have a choice here. We can go ahead and give any separator that we want. So if I go ahead and type [03:26:43] separators after address line one and after address line two right here. This seeter can be can appear like this here. Okay. So these are the separators that are appearing here. Meaning if we're [03:26:57] using concat and pois together, we have the option to give as many separators we want and we can choose different types of separator here. However, when we use concat ws, concat ws is going to give us exact similar [03:27:12] 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 give us option to write one separator and no more. So, concat with quies can [03:27:27] 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 ignore null but it will give us only one type of separator and it uh will not [03:27:43] give us an option to replace null value with any values or message. So we cannot with any values or message. So we cannot replace null with concats. So this these are few differences here. The best part here is our work does get easier. Okay, [03:27:57] how it will get easier here. So this is how concats works. So this is concats how concats works. So this is concats here. Okay. In conWS first here we give separator any separator that we can define. Separator defining here means we [03:28:12] can go ahead and type a comma maybe a semicolon in here or maybe just a comma. Okay, whatever we want or just the hyphens like this here. If I go ahead and type a comma now. Now you go ahead and you maybe want to type trim. You get [03:28:25] 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 going to be only one. Separator can be any d any kind of symbol right there. Okay. So [03:28:39] 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 thing here. And we add one more column everyone. We add one more column right here. Now in this [03:28:53] column here after address two, comma enter. And now here we are getting concat. This is concat with separator. So inside define the separator. So let's give uh separator with two forward slashes so [03:29:08] that I can show you where separator is coming up. And after this here we simply coming up. And after this here we simply need our address line 1 2 and three. So we are looking for address line one, address line two, comma we have got [03:29:22] city, state, postal code and country. If you want to type trim, you can. Currently, I'm not going to do that. So, here we have got address three right It looks easy to type. And let's look at the output then. [03:29:38] Let's look at the output. Everyone see here. This is address two and this is here. This is address two and this is address three. It was easy. We are able to get the proper output. And if I want to change the separator here, I will go [03:29:50] ahead and type a simple comma right now. And it looks much better. [03:30:02] But in real time what happens here is in real time everyone we use concat and co together but it because it gave us flexibility to type whatever we want wherever we want. That flexibility we get in queries because every time we are [03:30:16] not looking for one single separator 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 [03:30:30] available. In these type of realtime cases we will use concat and coies more as compared to concat and coies can be used with any other function whenever you want to deal with the null value. Yes, it is much easier [03:30:43] to type concav. Absolutely correct. I will also show you the reformat version because reformat version is easy to follow. [03:31:03] 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 are collapsed. So you can expand it, [03:31:18] collapse it. So that's the So that's the reformat every [03:31:35] 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 concat concat here all the four formulas are here right so do you see this minus sign [03:31:51] here do you see this minus sign here this is collapse see here we can this is collapse see here we can collapse the lines right there saving on the uh saving on the screen part so we we can simply collapse apps [03:32:06] it if you want to focus on one single formula. All right. Yes, it is easier to 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 with the name. I'm typing concat only [03:32:20] once. It is ending up with the name. In your case it is not like that. I don't know what you're typing and from where. Can you copy paste from code share and compare first? So copy paste the code share and compare what you are typing [03:32:32] and what is written here. you 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 [03:32:46] like. As the name suggest what does it 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 [03:33:02] position and from the start position 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. [03:33:17] Okay, so for example, I'm going to type uh just like this first and then I will show you the example. So for example show you the example. So for example here if I am writing here [03:33:36] 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 the substring here I will if I will go ahead and I will get ask to go ahead [03:33:52] go ahead and I will get ask to go ahead and read the letter Rod. Read the word product. The start position is start position is three and the length here is position is three and the length here is four. So what it is going to type? What [03:34:06] 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. So it will simply extract that position from that position till whatever length [03:34:22] 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 work on the products table. We have got product code everyone here. So let's [03:34:35] work with that. So here is our product table right here. So I'm typing from table right here. So I'm typing from first from the products and here we have select right down in the select here. I'm simply taking the product code for [03:34:50] now. And after put our code here let's type here sub string 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 read the product code and let [03:35:04] me show you how the product code looks like okay this is how the product code like okay this is how the product code looks like everyone [03:35:21] this is how the product code looks Okay. So this has here is 10 1 6 7 8 1949 26G and all done. So what we we are saying to the is here that go and read the product code and start with the first position and get me the four characters [03:35:38] position and get the four characters out of that position. Including that it is getting 1 2 3 4. It's a simple sub string here. [03:35:55] 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 sub help. Help with what? Help with sub string. [03:36:09] actually going to give you the entire description right here with the exam. Okay? And it will tell you that substr is a synonym for sub [03:36:22] string. Go ahead and get this please. Sample sub string. We will see an application of that. We'll see the application on that. Yes, it is like of Excel. In Excel also you'll find substring. [03:36:40] too. 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. [03:36:55] 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:37:11] 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:24] 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 without the decimal part. We will want zero decimal values there. Then we will [03:37:38] combine it with a reverse product 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. And we only want to view five first five [03:37:54] rows. We just want to sample the five rows. We don't want to get the entire [03:38:07] break it down one by one. So first let me write here select everything from customers. So let from customers is fine. From product is fine here. Now in select here we want custom product code. So let's uh [03:38:23] begin here with product name because we are 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. [03:38:37] Now after concat here, what is the first 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. [03:38:51] So we will apply the left function here. 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 [03:39:06] words out once we apply left. That is 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 [03:39:21] 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 [03:39:33] function is also format. Function is also format. This format is equivalent also format. This format is equivalent to the text function in uh Excel. It is equivalent to uh the format function in PowerBI. Meaning this format function [03:39:47] PowerBI. Meaning this format function 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 [03:40:02] a text. So this format function you can 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 [03:40:18] function right there and see now we do 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 [03:40:33] format function right here. Now 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 will [03:40:47] simply go ahead and say that yes go ahead and 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 [03:40:59] we are giving the separator we reversing the product code right there. [03:41:14] Absolute reversing. Okay. Once you have reversed it here, this become >> LBC intro for AWS cloud architect our >> LBC intro for AWS cloud architect our custom ID. So I'm writing this as custom [03:41:30] 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 this? It's so let's go ahead and convert this [03:41:44] caps. >> Gen AI powered SQL >> is already in caps. So we'll go ahead and simply the left function that we have written there. We can encompass it within the upper here. [03:42:00] 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:42:13] five rows. So we will go ahead and use here the last keyword that we have seen that is limit. And we ask get it to limit the output by five rows and we'll be looking at five rows only. Go ahead and see there are multiple functions [03:42:27] inside it. Type them one by one and see I will talk about format function. because I will talk about the format function. We are using format function [03:42:43] 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:58] Reverse here is simply reversing whatever is written. So if it is written ABC, it will reverse that into CBA. And then we are concatating all together uh then we are concatating all together uh while typing the separators here. [03:43:19] 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:34] 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 the local with it as per the zone so we can go ahead and format the numbers in any type of format we want for example [03:43:50] if we want to go ahead and we want a currency specific Currency display means ensuring two decimal points. So we can type a number comma 2. That's our currency display. Meaning two decimal pix two decimal points there. Second [03:44:03] here is we can if we had a large number we can add thousand separators to it. Or if you want a localized number format. So maybe if someone is writing currency in their own format not everyone is going ahead and applying thousand [03:44:17] operators every time. So every country has a different norm to type the numbers and the currencies. So we can go ahead and define that too. Or if we simply want to multiply by 100 and add a percentage sign there. So in these [03:44:31] 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 show you few examples here. I will show you few examples here. So let's take a [03:44:44] 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 go ahead and type select here and in select here I will use format. [03:44:57] This is format and let's say I will go ahead and type a big number. Okay. And ahead and type a big number. Okay. And I'm typing here as zero as zero. I'm putting this as formatted. Okay. [03:45:13] 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 again go with select here. With select [03:45:26] again go with select here. With select here and now I will type format. Okay, I here and now I will type format. Okay, I will go ahead and type format format. Inside format, let's go ahead and uh I'm writing let's say something [03:45:41] like this, some decimal values right there. and we multiply it with 100 there. and we multiply it with 100 because that's what we are looking right one I need one decimal here if I go ahead and type it like this right we [03:45:55] want to change it into percentage here so look at this what happens we see 76.8 8. Now what I want I want to add a percentage sign in front of it. To add [03:46:07] the percentage sign in front of it. Now I will use concat here. I will use I will use concat here. I will use concat here. And after format we can go there. And it is going to concat and type the [03:46:22] entire column like this too. So these are the few examples here. Okay. Go are the few examples here. Okay. Go ahead and check out the format function. [03:46:35] 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 two. You know about the product line too. If I ask you right now, if I ask you right [03:46:48] 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:47:00] line here, how does the how should the output look like? What should be the 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 the output in the result grid [03:47:15] should look like? How many columns we should have in the output? If we want average buy price of each product line here then how many columns we should have here? Which two columns? [03:47:33] have here? Which two columns? Which two columns [03:47:53] 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 [03:48:05] the entire product line column from here to here? Should we go ahead and extract the entire product line column here as it is? Should we simply copy paste it entirely same? [03:48:18] 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 without any duplicates of course. So with these unique entries here when we type unique entries only here meaning [03:48:31] each uh each product line should appear only each product line should appear only once. So that if it is classic uh cars here if it is classic cars here and then we have got motorbikes here and uh we [03:48:45] have got vintage cars here. Whatever we have in front of these unique entries we will only have one associated average number right here. Correct. So this kind of reporting so we all know this is how the reporting has [03:49:00] to be done. So this kind of reporting is called as aggregate reports. These are called as aggregate reports. Okay. So these are are called as aggregate reports everyone. Why? Because we're aggregating as per individual data [03:49:15] point. We're aggregating as per individual data point. Right? If you have learned Excel, it is exactly what pivot table does. If you have learned Excel, this is what exactly pivot table does. So how do we create these kind of [03:49:29] does. So how do we create these kind of reports in uh SQL? This is where group by comes in. This is where group by comes in. We haven't touched it yet, shown you there is group by and having. So this is where group by comes in. What [03:49:45] group by will do here is group by will go ahead and simply fetch the unique 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 [03:50:00] of any categorical variable any categorical variable that what the group buy 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 [03:50:14] that is fine that is done by select but group by will be the one who is going to fetch the unique entries right here so last example everyone let's go ahead and see how group buy is applied here. So we'll go ahead and we apply group by [03:50:28] right now. So what we want to get? We want to go ahead and get the average buy price of each product line. So first thing that we do here is we type select. In select here uh we are working with [03:50:41] the product table here. So let me go ahead and type product first. And after select here let's expand it here. And we will get the product line here. after product line here what we are looking for we are looking for to [03:50:56] calculate average average of what average of buy price so you'll ask it to get the average of buy price here I'm calling this here as average okay however after from product here we have [03:51:12] to use group by here why group by because group by has to inform select that do not fetch the entire column so when the select is in the select group by will tell it let's see you're not supposed to fetch the entire column I [03:51:27] will go ahead and pass you the unique list of product line so remember that 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 [03:51:42] structure so if we are grouping it by product line product line has to be 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 [03:51:58] once I execute this here you will find the average right here. Of 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 rounding this off here. [03:52:15] 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:30] let's go ahead and say for each country for each country let's figure out uh for each country what is the average credit limit? What is the average credit limit? [03:52:42] And while we are looking for it we want to see only the top five. We want to only see the one. Let's go ahead and see how to solve it. So first thing we have classic models. We have to make sure that the classic models is default. All [03:52:57] right. Once you set it that as default 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 [03:53:11] is asking for top five. We'll see how we will get to the top five. First let's here. So first thing that we understand here is we have to work with the here is we have to work with the customers table right here. [03:53:37] 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 [03:53:50] this here as average credit. Okay till here everything is fine. However we need aggregate report because we cannot simply fetch the entire country column. We need unique list of [03:54:05] country there. So go ahead and ask it to group by and country right here. Now this must be we understand from our previous example. So this is it. Uh this doesn't look good. Why? Because it has got too many [03:54:19] round it off. We'll go ahead and we round it off. Here we have we already So here we go. We will go ahead and ask it to round it by the two decimal points it to round it by the two decimal points right there. [03:54:38] limit. 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 entire select [03:54:52] path here this group by right now after group by here we have order by and group by here we have order by and limit. Order by means sorting. So after but after afterwards here if I want to go ahead and see who has the highest or [03:55:05] 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 simply go ahead and [03:55:20] write the name here since average credit limit is already a name inside this aggregate report order by works when the select is on uh when the select has given us the output. So in the output average credit limit this name is taken [03:55:34] as name of the column there. So if I go ahead and ask you 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:51] So if I want to see who has the highest, how do we get the highest here? We go ahead and we give the descending order. So we go for move forward here order. So we go for move forward here and we define that that go ahead and [03:56:04] give us a 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:56:19] 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 is limiting the rows here? Limiting the rows here means we will go ahead and use [03:56:34] keyword that is limit. Limit is pretty simple. Okay, limit here goes ahead and simply limits the number of rows from output file there. So this is limit five. The moment I put limit five here [03:56:48] and execute this, we have top pi right here. This is limit. So it is just in succession everyone. So right now we have each country average limit and we want top pi. To get the top pi there, we will use the order by and [03:57:03] 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:57:16] 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 because this is the last thing we execute. [03:57:30] 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? order of execution that have to go ahead and do anything about it. Since we know about group by here [03:57:43] and we will soon see having also here understand when these queries are actually executed at the back end. Whenever you're writing a query, even you're writing a query, a simple query like select everything from customers [03:57:56] table, it will first go ahead to your 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 [03:58:09] the columns that you're asking for. If you're uh giving a database uh filter so address it will go ahead and then put the filter there. Maybe you want every everything from USA. So it will go to the address it will filter out all the [03:58:23] rows from USA and then it will go ahead and select the columns for us in the ahead and execute everything out here and then it goes to select. So once select will decide that okay this is the calculated output that you want there [03:58:37] and these are the columns you want there. Once this is done then the 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 [03:58:49] execution. If we know this order of execution and we understand this here, 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 [03:59:04] is helping us to actually apply certain conditions. 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 [03:59:16] which will talk about the order of execution in detail. But that is uh what we have to remember. So this is the limit everyone. Okay. And this is the group by. So we'll move forward and uh we'll talk about group by and having [03:59:29] we'll talk about group by and having here sales rep. We have customers 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 [03:59:42] country we have got sales representative and we want to go ahead and count the customers for it. So we need first country column and then then we want to count the number of customers. So far we have only written [03:59:57] one category uh categorical variable 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 [04:00:11] with the sales rep and then count the 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 [04:00:25] in the customers table. Now within the 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 sales employee. Here the name is too big [04:00:39] for me. So I'm going to go ahead 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? [04:00:53] What we should count here? If you want to count number of customers, what we should count in the third column out of the customers table of course. Okay here we have two options right now. Anyone else? Right. So remember that we uh uh [04:01:09] 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 we go ahead and [04:01:25] count any of these columns here, it will still count the entire rows. We can ask simply go ahead and count the entire rows in the entire table. Of course it has null values then we'll have a different answer. So count customer [04:01:40] 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 we'll count customer number because it is always going to be [04:01:54] unique. Yes primary key concept correct. So account customer number and I'm going So account customer number and I'm going to name it as to customers uh customers mapped because these customers are mapped to each of the [04:02:07] representatives to take care of. So here we will go ahead and type customer [04:02:24] 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:38] 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 at this. what we see right now that [04:02:53] Australia has only one resale representative here. Australia has only are five customers mapped to that person. Similarly, when we move uh below person. Similarly, when we move uh below here we see USA right now and within USA [04:03:07] we can uh clearly see that we have got multiple sales representatives here and multiple sales representatives here and they have been mapped with exactly six persons each. So likewise we can see Switzerland has uh these many customers [04:03:20] but few customers have not been mapped with any sales representative there. So 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:32] 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:46] increasing, what if there are 10 columns are there that one has got year, another has got employee number, another has got your employee name, then you need uh their sales target and whatnot. So if the number of categorical variable [04:04:01] 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 everything is going to be exactly [04:04:16] 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 variable in select exactly those two [04:04:31] categorical variable has to be mentioned in group by. For example, if you will mention if you will say that no it's okay I want the sales employee number here but I don't want it to group it by. I just want list there. It cannot [04:04:44] 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 variable right here and the [04:04:59] exact name too. So, to avoid the conflict and 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 agree to that? In this result get [04:05:12] 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 we want sales employee number [04:05:25] 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 we understand this part that yes this is [04:05:39] 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 column group it by the column one comma column two and order it by order it by in this [04:05:55] example let's order it by customer mapped that is the column number three column number three right there. We can go ahead and write it like this too. So if I go ahead and execute this right now we still get the same answer. If you [04:06:08] that in descending order too. Right there. See? Okay. So go ahead and see that there. This is one more way to type your word by queries. And yes, order by also understands the column number here because select by then has already given [04:06:23] 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 type it. Now here now here let's add one more [04:06:36] 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. We want to see the countries. We want to see the country list. [04:06:51] see the country list. Country list where customer mapped to Country list where customer mapped to sales reps are more than five. Okay. Only the country list where customer mapped are more than five. So in this [04:07:05] 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 uh where do we apply the filter on which particular column we need to go ahead [04:07:18] and apply the filter we know that we 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 filter customer mapped are do we all [04:07:31] agree that yes customer mapped. Okay. Where is the customer mapped present? Is Where is the customer mapped present? Is it present anywhere in the uh database or customer map is present right here in the result output. [04:07:45] 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 whenever we have an aggregate report created with the help of group by and we [04:07:59] 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 fetching the unique list in this case we always give the filter with having we [04:08:13] 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 having here having clause here is used to give the filters only on the [04:08:26] aggregated reports created with the help of group by. So here we can say having customer mapped greater than should be equals to five. When we go ahead and write that here okay this is it. See we getting all the uh customer uh countries [04:08:41] here with customer mapped 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 we have got country right here. Okay. So [04:08:58] 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 and learned with bear. This is having clause everyone. Remember that uh this [04:09:10] 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 uh executed once the group buy and select and calculations all are done [04:09:26] then only the having takes effect. That's why it is avoided. If we can if we can apply it with bear we will apply it with be where not with h. [04:09:39] I would like you all to beautify this here because once you beautify this here it looks really good and and legible. You can read it easily. How many product line that that we have here. Okay. We have got classic cars, vintage cars and [04:09:54] trucks, buses, ships, planes, motorcycles and more. Okay. However, what we are asking here, it is asking here that they don't want to see classic cars or something else, ships or something else. They simply want these [04:10:07] from the list. So, first we will figure out from. So, which table are we working on? We have figured that out very easily. We are working on the products table there. Fine. Now, from the select here, which columns do we want in the [04:10:20] output? What should be the first column? We need product line with average MSRP. Meaning the first column has to be product line. We agree to that there and after this here we want to calculate average MSRP right there. [04:10:35] Now after select here we have to group it by we agree okay we understand that we have 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 [04:10:48] will be different. What's different here? Now it is asking here that it doesn't want all the things there. I simply want to go ahead and filter out only these list. So tell me here how do we filter out the entire list? Everyone [04:11:03] what do we use to filter out from entire list? We use where clause very good. Now with the wear 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? If we want [04:11:16] to filter out every row which contain these four names, which column contains these four names? Everyone product line. So we need to go ahead and bring the present in the database, we will be [04:11:30] using the wear clause. Great. Now tell me which operator helps us to filter from the 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 [04:11:44] output. Right? Very good. We will use n operator here. We use the n operator operator here. We use the n operator here. Perfect. So now we have covered almost everything. Last is while determining here average price less than [04:11:56] 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. So if you want to filter this here, what do we do? We will go ahead and use [04:12:11] having. Why you are using having here? Because we are using this average that we have that we have calculated out. We want to go ahead and calculate it out. Average we want to filter this out. If the average MSRP is less than 100 [04:12:26] 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 product line we can type one right. So this is the product line we want to go and [04:12:40] order. That's how we type it. So first I'm here. We know we are looking for product line everyone and we want to uh type line everyone and we want to uh type average there and rounding it off. [04:12:55] I'm rounding it off here. Easy to write it together. And this is here as I'm taking this as average and we're sorry. [04:13:09] 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:26] line here and find it out where any of these names are present. [04:13:41] We have to go ahead and give the single quotes right there. type what we can type one and in the having [04:13:54] 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 there. [04:14:09] Now we need to order it by. So we can simply ask it to order by here. Order by one. And here we are. Even if I don't write order by one here, it will [04:14:21] be ordered by one right there. Go ahead and check this out please. And I would like to reformat this too. uh after reformatting it rely formatting it does look better and legible [04:14:40] about a little bit about the date functions too and we will talk about 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'll go ahead and see [04:14:53] 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:15:07] number of orders placed each year in the orders table. So what we are getting orders table. So what we are getting here is total number of orders is fine. Yes. Yes we have to because see here we it is asking us not only total number of [04:15:22] 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 placed every year. Orders have been [04:15:36] placed every year. Yes. And almost every day and every day there are multiple day and every day there are multiple orders right here. ahead. We have to extract the year and then we get to count the number of order [04:15:51] then we get to count the number of order each year. So let's go ahead. What do you think we extract the year with? Which function can we use [04:16:06] see. So first thing that we figure out here is that we want to go ahead and get everything from the orders table. So this is the orders table right here. Now what uh what two columns we want here. So inside the [04:16:18] select per year, first we want to extract year. So we'll go ahead and use the year function. See the year function right there. Yes. I'm going to go ahead right there. Yes. I'm going to go ahead and extract the year out of order date. [04:16:32] Okay. We are going to name this as order here. 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 total number of orders everyone? We use count. Right? We go ahead and we ask it [04:16:47] to count there. So we go ahead and ask that see this is the count function. go and count the order numbers right there. You don't want to add them up. You simply want to count them that how many are there. I'm going to name this as [04:16:59] are there. I'm going to name this as orders count. Okay, this is our orders count right here. [04:17:14] year 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:27] 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:43] 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:57] 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:18:12] 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 layer because it is not the [04:18:27] part part of the order right here. So this is group by one with roll up right here. So go ahead and uh get it this please date and group by the caution that I'm pasting here is okay. It simply means which day the Sunday, Monday, [04:18:42] Tuesday 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 first completely. Find out which day of the week has most [04:18:57] orders. What is meant by most orders means most number of orders. Most number 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 the orders true for each [04:19:11] day then only we'll have the answer right that Sunday Monday Tuesday when did we had the uh most days there so 50% there so how do we go move forward this everyone so we will go ahead and type select and we already are aware that we [04:19:26] want count there right we want counts again so I will go ahead and write the counts again and we know we are looking at from uh the orders here and we have at from uh the orders here and we have to group by the days that we have there. [04:19:38] 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. So if I go ahead and type day right now, [04:19:53] 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:20:06] 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 [04:20:18] get. So uh we want to find out most count of 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 [04:20:33] descending. And now we know this is the highest. The only problem is I have no 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 [04:20:45] Monday or Sunday. No idea. So we have to find it out No idea. So we have to find it out whether this six is what? Whether one is a Sunday or a Monday. when does the week starts here to figure that out here. [04:20:58] 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 function called as day name. Day name particular day. So here we go and ask that go ahead and get the day name here. [04:21:15] that go ahead and get the day name here. I'm going to call this as order day name. Here we go. Now here since we are adding one more categorical variable in group by we'll say group by 1 comma 2 and we [04:21:30] want to find out who has done the most right which day has the most so now we say count is three here so I'll say order by three right here and sleep here we have so six is the Friday the day starts from Sunday [04:21:44] go ahead and get this please there are more date functions out there now here let's go ahead and see what if there we want here that Count of orders placed in each month of each year. So again we want count of quart orders here. So this [04:21:58] is going to be similar. So this much is going to be similar. The only thing that is going to change here is the functions. [04:22:13] here. What we want here is that we want for each year and month. So order year 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 [04:22:27] go ahead and type the year function right here. And we are good with that. Now, let's go ahead and find out another function which can get us month. So now we have two options here month and month name. Now it is quite evident [04:22:41] numbers. Month name will give us the numbers. So let's go ahead and get the month name there. So there it is. We have got month name here. See this is order month and of course we have got two things here year [04:22:55] and month both when we go ahead and execute this right here it gives us execute this right here it gives us two columns right here year and month and fortunately this other month that you see here it is properly sorted to in [04:23:09] proper January February and March right here okay we are good here so this is order and month right However, however, what if instead of [04:23:23] 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 don't want uh year as a separate month as a separate column. Instead of this year, how about [04:23:38] we want to write it something like that. This is 2005 here and maybe January. it in one single column. So how do we format this in one single column? To format this in one single column [04:23:53] again this part is going to be sim right. This part is going to be sim. What is going to differ right? Now is the selected statement is the selected statement count is fine. What we want is a formatted value here. So if we wanted [04:24:09] to customize the date format we will go ahead and use the function called a state 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 [04:24:21] order date. What we want to format here we want to go ahead and get the year and month out. Yes. So we can go ahead and give formats like this. We can go ahead give formats like this. We can go ahead and type percentage uppercase Y a hyphen [04:24:34] and type percentage uppercase Y a hyphen there and then percentage uppercase M there and close the parenthesis right here. This will become parenthesis right here. This will become as our order year and month. So this is [04:24:48] are looking for here. So this becomes our order year and month. So that is our first column right there. Okay. Let's see how does the output [04:25:00] looks like. Here we are. All right. First year and month separate here and then we are getting year and month together in one column formatted properly. So it's a custom format every [04:25:15] 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 upper case what happens if I go ahead and uh write lower case because now we [04:25:27] 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 we are typing here y in caps here we are [04:25:41] 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 this here observe right now what is [04:25:55] 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 two digits we are getting only last two digits here and m is now written as a [04:26:11] 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 we can go ahead and write it little bit we can go ahead and write it like this that this should be y here [04:26:25] right and uh this m here can be in 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 month name like J N M A R D C like that then we [04:26:42] 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 that you always Write percentage require that you always Write percentage y /b there hyphen b there we can always [04:26:56] go ahead and mix it up. Okay. When we say mix it up here maybe we want to type say mix it up here maybe we want to type b post and buy later. It will come up like that. Okay. So go ahead and find it out. [04:27:10] 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:25] 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:40] 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 organization is not giving you any internal AI application to you. Never [04:27:52] ever use AI for your organizational data. And with AI, it is not faster. Why? Because you have to check check it by yourself. So you have to know at answer or not. Because no matter how powerful the AI is, even perplex [04:28:07] perplexity that writes in the bottom that this is AI 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 [04:28:21] and cross check it. For beginners it does look faster uh but it isn't because 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 organizational data too. [04:28:36] 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 uh between order date and ship date for [04:28:50] 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:29:02] 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 wherever we are taking more than 5 days [04:29:16] 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 find the function that will actually give us the difference between the two dates? [04:29:29] 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 are taking month name out here month name out of what order date. Now till here this says we [04:29:44] order date. Now till here this says we are going to get order month. Okay after this order month here we want to go ahead and calculate uh difference to go ahead and calculate uh difference between the dates here. Correct? No. [04:29:58] 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 uh sub here and date diff date diff between the dates this is the common function here you will find that in [04:30:13] 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 are trying to say here is I want to see that how many days we are taking between [04:30:30] 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 the difference between this? How many how much difference of date is there? 4 [04:30:42] days. Right? Now similarly we want to go ahead and do this calculation for each here is we want to go ahead and we want to do this calculation for each and every row. And then for for example [04:30:56] 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 calculation for each and every row that okay what is the uh difference between [04:31:08] 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 row wise calculation. Second here is we [04:31:22] want an aggregate calculation within that. So let's go ahead and solve it step by step. So first thing that we are looking for here is in each day we want to see the difference between shipping date form order date. [04:31:37] date form 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 here. First thing that we do is we want we don't want the to add a calculated [04:31:50] 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 whatever calculation we will do here go ahead and calculate the average of data [04:32:03] 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 group it by five. So here I'm typing [04:32:18] group by one that is mark. 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 the entire function and here we [04:32:32] to round the entire function and here we go. month here this is the number of days we took to ship something right there. Now what we want we want to focus on average where there that is more than 5 days [04:32:47] here. So this is the average difference 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 than five [04:33:01] than five we have got one month only that is two. and give us the proper difference between the two dates here. It sometimes [04:33:15] between the two dates here. It sometimes also uh get hold of the lab year. If you go ahead and yes uh see yes you can ask it to go ahead and minus the shipping date with the order date. You can do that. [04:33:31] that okay there are few discrepancies might happen. That's why we have a 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:44] 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:34:01] 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 only the date part of the values are used in the calculation there and [04:34:14] they're also giving us a simple example right there. In this example here they 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 [04:34:27] simple minus will not work on time. Okay. 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 [04:34:42] Excel it's a hidden function not shown there in the sequence. It is more fun to type in Excel because you cannot see it there. And in Excel it will also give you an variation. Okay. In Excel you can actually see the [04:34:57] differences in years or months. or days and PowerBI also it is quite interactive and excellent PowerBI and Tableau also it gives us multiple options and find [04:35:09] >> I need to have a column name for it to 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 [04:35:25] doesn't understand that as name you got it [04:35:39] simply show sub totals here so with the roll up here we have uh seen subtotals here so we have got year and month separate remember if we go ahead and add [04:35:51] with rollup with roll up here and we have two categorical variable was we uh will go ahead and get sub totals in between. See, between. See, okay, we get subtotals in between. [04:36:11] subtotal for 2003 for example here. Then you go ahead and get subtotal for 2004. Then you go ahead and get sub to for 2005 year and then an a grand total. So [04:36:23] write this you will get the uh sub totals and grand totals [clears throat] here if you have two categorical variables. variables. So sub totals are automatically [04:36:42] 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:57] to replace the null with coies. We can easily replace the null with coies here but there are some settings that which will not allow us to do that but for This is the free version of your working use not complete code [04:37:13] 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:29] here everything in thousands okay everything in thousands here so they everything in thousands here so they have been paid It's 2K, 3K and 5K here. Done. But uh so here we have got more people here. [04:37:51] we got to know about that they have been employed for different purposes there. Right? So they have been hired for different departments here. So now we will go ahead and uh add the department name here. So these people hired both [04:38:04] department one here. These for department two here and this for 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 [04:38:19] here? How much total we have paid so far? What 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:35] Right? So we have here so we have here 5 5 10 11 12 and 13 right very good so we are adding up it to 13 right that's grand but if I ask you now here that okay tell me department wise how how much we have paid here that then give me [04:38:47] sub totals also so how do we get the sub 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 [04:39:00] here what is it subtle for department three here. Add a row here. Correct? So, what's the sub total here? Five. What's the subtotal here? Six. What's the subtotal here? Two. So, we have to add a row here and add the subtotal right [04:39:12] there. That's the total for department one total right there. Department two total right there. And likewise. So, that's what rollup is doing parts. We rollup does for us. It will go ahead [04:39:24] inside that. And if we have two columns there, it will give us the total and the 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. [04:39:41] now? Next here we are moving forward everyone for logical statements. Right 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 [04:39:55] one single statement and then and or in between we can filter out with more than 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 [04:40:10] function there we have got if function there. Why do we need if and case and when? Remember that with the help of comparison operator and uh with the comparison operator and uh with the logical operators out there we will we [04:40:23] were able to only filter out by those conditions. Here logical statements are used when we want to go ahead and add a logically calculated column or a logically calculated column within the data uh within the result grid there. [04:40:39] For example, this is our customers database. Right? In this customer database. Right? In this customer database here, we want to go ahead and read their credit limit and based on their credit limit, based on their [04:40:51] credit limit, we want to [snorts] 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 basic sales team that we have there, we [04:41:06] 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 customer name customer name their contact their contact their contact plus which [04:41:24] 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 credit card score with someone or credit card eligibility with someone in a sales [04:41:37] table there we will simply tell them the credit card eligibility that these are the cards that you're eligible for, right? Have you received these calls their contact number, they even have your email ID, they know which credit [04:41:50] cards you're you are eligible for. Okay, we all have received those calls. So, we can go ahead and do that. Why? Uh because we can go ahead and say that let's see if your credit limit is more than 75K, we are offering a gold card. [04:42:03] If it is between 50k and 75k then we are offering you a bronze here and other than that we are offering you a silver or something else. Right? So what we are doing here is we're simply checking the number and writing an output. We are not [04:42:16] 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. Another option here is uh for example we want to go ahead and uh assign the you [04:42:31] want to go ahead and assign So if uh so uh right now the season is going on okay those who are working [04:42:45] those know that appraisal season is going on. So maybe now they want to go ahead and based on the job title and the performance they want to give us a assign a category to us. Good, bad and uh good, bad and and uh excellent. Okay, [04:43:00] whatever logic they have with them. So when we want to add any kind of calculated column like this, this is where the if and case event comes. First function there. Those who have worked in Excel, you already know about the if [04:43:13] function. It is exactly the same here. If you will look into the if function here, this is how the syntax looks like. This is how the syntax of the if function looks like. Inside if here if function, it asks you that okay, what is [04:43:26] the 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 you want to give here? This if function right there, this if [04:43:38] 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 go ahead and uh we want to check, if we [04:43:52] 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 man. Case and min is easier than nested. [04:44:08] Case and min 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 the categories based on the credit limit right there. [04:44:30] So first let me explain. Okay. So let's go ahead and learn about the logical statements and the functions. First we are going to not talk about if here. If is pretty straightforward. Okay, we have to give a condition and the output value [04:44:45] if the condition matches. Output value of the condition doesn't match here. So let's go ahead and apply individual customer. Okay, which credit card do customer. Okay, which credit card do they qualify for? So we will simply give [04:44:57] that they are high credit. They are high 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 if there there's 50,000 or below here. [04:45:12] So let's see how do we go ahead and get that. So here I'm writing select in select here. Uh we are getting it from where? We getting it from the customers where? We getting it from the customers table here. So once that is established [04:45:27] now we can go ahead and 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 [04:45:42] want to add one more column where we have these categories assigned. So now we go ahead and type the if function here. See here is the if function. Now we open the parenthesis here without any space everyone. And what is the [04:45:54] condition here? Condition is that go and check the credit limit. If the credit limit is greater than 50k, if it is greater than 50k here, [04:46:06] if it is greater than 50k here and the condition is matching, go ahead and type high credit. Go ahead and type high credit. If it's not matching, so value [04:46:18] credit. If it's not matching, so value if true, that is high credit right here. if true, that is high credit right here. And if it is false here, go ahead and And if it is false here, go ahead and give local as the output [04:46:31] as the output right there. So we are asking if function here to do that. Of 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. [04:46:45] And see we have a calculated column. There is no calculation there. Simple 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 [04:46:59] now so go ahead and get this please simple logical function right there if 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 [04:47:13] on their job title what are the conditions here is if someone is president okay we will give them a category of top manager management. So not performance category, let's give them management categories. That's [04:47:26] manager, right? If there any kind of managers out there, we'll call them management. And if there is anyone else other than manager and president, we'll simply go ahead and call them staff. [04:47:38] Okay? So uh tell me here first tell me here which table are we talking about here? Which table we have to work with? Employees table. Right. Very good. [04:47:50] out is that we have to work on the employees table. I'm getting this out here. Now we go ahead and type select. Now in select here which columns do are Now in select here which columns do are we looking forward with [04:48:07] number right and we want their name there. And let's we of course looking forward to their job title. We need these three to their job title. We need these three columns right? Yes. Now tell me how many [04:48:21] conditions are there that we need to check right now because after job title here um I we we 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. [04:48:34] So how do we check these three conditions? Right? We write the nested if. So before I go ahead and write the nested if maybe there are few newcomers out there. I will go ahead and explain it here and then we I will go ahead and [04:48:47] type it out right because when if I type it out directly it might look a little bit uh complicated. So we will first start with if everyone right inside the if p here we have to give a condition. What is the first condition here? [04:49:02] President right. So we can go ahead and say that if if the job title here the job title here is equals to pres president here. If it is equals to president here. If it is equals to president here and if this is true if [04:49:16] president is written there. And if it is true here, what we want in the output? 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 [04:49:32] not president? What we do then? Then we ask SQL here to check for another 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, [04:49:44] somewhere manager has to be written. How do we find this kind of uh condition everyone? We will check one more condition here. So how do I go ahead and write this condition that somewhere manager should [04:49:57] be there in their job title. How do we write that? Wild cards. Absolutely right. So we can go ahead and say that job title might be like anywhere manager to be written. So here when we are asking you to go ahead and check for [04:50:13] another condition. Okay, we have to go ahead and after this value if true when we it it will ask us value if false we will have to go ahead and type if again since we are typing if again here and we asking go ahead and check if job title [04:50:28] condition we are giving here again we have two options either this is going to 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 [04:50:44] If this is also false. So the first condition we have given that is false. 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 [04:50:58] simply go ahead and say that whatever is left now you go ahead and tell them it's a star. That's it. And now here we close our f that we have written the second time. We have also closed the f that we have written the first time. So we have [04:51:12] 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 conditions keep on writing more conditions there and keep on writing if [04:51:27] 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 here. So we are typing here if inside if here we are asking it to go and check is this job [04:51:40] asking it to go and check is this job title is equals to president. 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 top management. Till here [04:51:55] everything is fine. Now comes the catch here because we type a comma again and we type if again 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 [04:52:08] job title should go ahead and find out manager now that manager can be written anywhere I have no idea so that manager can be written anywhere so that manager can be written anywhere in inside the entire phrase if job title [04:52:22] is like manager there we type a comma again and uh we want to type management in the output now if it is not the top management not the management It is simple as stop. You go ahead and write a stop. Right. Now we [04:52:37] close the bracket here. First bracket and the second bracket right there. And I'm going to call this as management category. [04:52:57] 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 connections. Right here one thing that you have understood here is [04:53:10] 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 [04:53:23] syntax. 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 will go ahead and see how do we use case and [04:53:36] when statement to apply multiple conditions. Great. So if there are multiple conditions writing nested is going to take a lot of time and a lot of attention right there effort instead of that we use case and when a statement. [04:53:49] So let's see uh what for understand case and when here this is how case and when looks like the syntax here everyone it simply says that here okay the case statement starts with case and then we write when in so whatever we are working [04:54:04] 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 [04:54:16] here it's quite easy to follow too so Let's go ahead 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 [04:54:30] detail. We give them the credit cards. Here we are 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're below 50K here, okay, we are [04:54:44] they're below 50K here, okay, we are giving them bronze, there if they are below 50K. So let's go here and see how does that [04:54:56] 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 selector in select here. We can ask you to get [04:55:09] customer number, customer name. [04:55:22] here we adding that case. See it's a keyword right there. And now we will go ahead and type in when. Now what is when? Uh in uh when here we are will condition that we're looking for the correct limit should be greater than [04:55:38] 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 gold credit card. They're eligible for that. After this here we go ahead and we type in when [04:55:53] ahead and we type in when when again credit limit here. 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 [04:56:07] between here. If credit limit is between between 75k between 75k and 50k here and 50k here then we are giving them silver right here. Else meaning if none of [04:56:21] these two are true here we can go ahead and type else. Else if none of these are and type else. Else if none of these are here go ahead and give them bronze. If none of these uh conditions matches go and give them results here everything [04:56:36] is done right but since case and when we will go till 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 [04:56:51] here and after ending it we have to go ahead and give this a name because this entire thing cannot get go inside the name here so here we are writing name here so here we are writing Thank you [04:57:07] right there from the customers table right so this is how we are writing case and event I'm write I was writing that in one single line okay and this is how in one single line okay and this is how it looks like after reformat everyone [04:57:20] okay 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 [04:57:34] the group 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:48] 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 Of course, I'm going to write this as sales rep since it's too long name here. [04:58:04] whether the person has been assigned or not. Let's see find this out here. We'll 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 need to [04:58:17] check. Let's understand here we have just one condition. What is the one condition? One condition and it is if customer has a sales representative. If customer has a sales representative here there are two outputs where we can say [04:58:31] yes or no. So we have to check one 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 uh if I have one condition and two outputs we use if function right [04:58:43] here. So inside it here we will uh what do we ask? How do we ask this? We simply ask it here that go ahead and check if this sales representative this sales representative is null. That's it. Because we are [04:58:58] automatically getting the customer number and name there and sales rep. I'll ask it if sales representative is null go ahead and type not assigned. [04:59:10] 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. [04:59:22] wherever there is a null value it says not assigned. ways to type it too. I'm not saying this is the only [04:59:35] uh have you observed one thing here. Even when we are learning about group by we are learning about the statements out there. We need to go ahead. We are still working every time on one single table. every time we're working on one single [04:59:49] table right what if we have to go ahead and find out for example we are working right now 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 [05:00:04] maximum sales so because in the customers table we don't 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 is here. But [05:00:18] from where do we get the sales data everyone? How do we get the sales data that how much sales have been made? Total amount the customer has paid that do we need for that? Where we can find out which customer has paid how much and [05:00:32] when or how many number of 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 [05:00:46] customer has paid for that. Okay. So right now we have orders payment date customer number. So if I want a very simple answer now this is a very simple it I want to see that how our sales representatives have performed and how [05:01:00] 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. You want to go ahead and work with multiple tables together. Now how do we do that [05:01:14] 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 [05:01:26] is where the concept of joins will come. 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 [05:01:41] it merges the two tables there and in 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:57] basic four joints here. Okay, very basic three joints here. First it is left join, right join and inner joint. These are the three joins that are present in MySQL. There is one very specific joint for my SQL and that is called as [05:02:09] crossro. So when I say that this present in MySQL 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:23] say right, it will do the right joint and so on. However, in general when we talk about data models there out there and uh database out there, we have some other joints too. For example, full auto join. There is something called as full [05:02:38] 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 u make a full auto join. Right? So, full auto [05:02:52] join is not present directly as a keyword in my SQL. is present in MSQL. 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 [05:03:06] anywhere else also is self join. And if you want to go ahead and do a full order join inside MySQL, there we go ahead and we use union for [05:03:18] you. We'll understand about this union keyword too. 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 [05:03:34] to reshare my screen here. You should be looking at an Excel sheet. Okay. [05:03:47] 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:59] 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 to show you here. Do you see we have got two tables everyone? We have got order [05:04:11] ID and customer ID right here. 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 this much they have paid so far. Of [05:04:24] course, we want to go ahead and analyze it till uh here when we have observed that the customer name is right there. Customer name is here and more customer address, phone number and all that. More details of customers are here. So why to [05:04:39] keep two tables here? Okay, if I want to figure out that who 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 [05:04:52] number two which is placed on the right hand side of the sheet here. We want to fetch the customer name right here. If I want to do this here, if I want to go ahead and copy and paste it right here like this? Is it correct? Can I simply [05:05:07] go ahead and copy and paste it right 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 cannot simply go ahead and copy and [05:05:20] paste, right? We cannot just simply go ahead and copy and paste. We have to go 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? [05:05:33] What is the common column we have here? Customer ID. Customer ID is a common column. So if 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 [05:05:47] here to here and we'll check. Okay, do we have a CR1? Yes, we have. What's it name here? John. So we will go ahead and copy and paste. Right? Copy and paste it right here. Now we check again. Okay, this is again CR1. Now we will check [05:06:00] 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 Pete here. This is CR3. This is uh here. This is CR4 here. And we'll get it there. This is CR3. CR4 here. We are [05:06:15] matching them right here. Now, do we have CR6 here? Do we have a name of CR6 here? So, what do we do here if we don't have a CR6? [05:06:31] write null here. It's none. There's nothing there. Do we have a merge table right now? Do we understand what we did? We simply mashed it everything and we kept it. None. What about others? those who are [05:06:44] 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:07:00] 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 we compromise this data set [05:07:15] 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 had any sales yet. No need of that because this person has [05:07:29] 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:43] 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:57] 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 table [05:08:11] 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:26] 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:40] 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 join. Very rare cases out there. Okay, that is right join [05:08:55] here. Now, what is inner joint? If this is left and right here, what is inner join here? inner join is it will keep only matching values from both the tables here. Meaning we will not f CR5 neither CR6 why because CR5 doesn't have [05:09:10] 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 here. Okay. So this is [05:09:26] 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 choice for in this scenario? Yes. Is inner join a better choice? Let me show you here. Okay. When [05:09:43] 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. We didn't had any name of this person here. But this [05:09:57] there. We have compromised our data set because of the inner joint. Okay, it is just like the inner join. So here in inner join here we are compromising a [05:10:09] 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 of few values or few details are not [05:10:22] 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 inner joint? And when this inner joint is like intersection in my diagram, yes, [05:10:36] it will look like that intersection. Yes. So this is inner joint. Right. So everything from the left side. We have measure everything from the right side. In the inner joint, we have the common table right there. But it compromises [05:10:49] 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:11:02] 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 all cost. So the types of [05:11:15] joints that we have seen so far. So in MySQL we have understood that there are uh basic joints are there like left outer join, light, right outer join, inner join and pull outer join. Other than these four basic joints what we [05:11:30] 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:45] key words that are present in my SQL. whole auto join is not a keyword that is present. Neither the self join is a keyword that is present. These both are keyword that is present. These both are the concept which uh these both are the [05:11:58] concept of merging the table together. However, pull join is achieved pull outer join is achieved with union operator and self join is achieved with inner joint. So we will go ahead and of course the [05:12:15] second one here last one here is the cross join. So yes cross join is a keyword that is present with us within the MySQL here and this will differ with each platform. So left right join and pull out order join that is present in [05:12:28] MSQL and Oracle and other places but not in here. So let's go through the concept here. And I will go through the con concept here uh quickly because we will go ahead and do the hands-on practice that will be much better than that. So [05:12:42] what is inner join here? Inner join is the one where uh we will get only the 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 all the data from [05:12:58] the table number one and we are getting only matching data from table number two. What is the right join here? In the right join here, we are getting all the all the data that is matching from the table number one. [05:13:13] 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 and we'll see the hands-on practice. So we are at debug bench everyone and today [05:13:28] 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 small table so that we are able to understand how to type join better. [05:13:44] So with the joins here we will also learn about DDL that is data definition language. Okay. definition language. Here we are going to create a database. Inside database we [05:14:00] 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 start a small and then we go ahead and join them together. Let's first go ahead [05:14:15] 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:27] I'm going to show you something and how to create the table right now. So in ahead and create a database. I'm going to name the database as DB joins because this is database we're using for the purpose of joins here. I am not [05:14:43] executing it right now. Inside this DB joints here I will make sure that from 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 table. Where do [05:14:55] we want to create a table here? We want to create a table in table 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:15:09] 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. and go ahead inside this [05:15:22] 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 var [05:15:39] decimal, double, the small integer, big integer, date, date and time. All those are data types. So we'll go ahead and assign the name to these column here. and we assign the data type to and like this we will keep on going and giving [05:15:52] the column names and 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 [05:16:07] creating the structure of a table. It is still empty. So we'll go ahead and uh writing create table. This is the database name. Let's uh create a simple table here for employee input which uh we can all relate with. So we're [05:16:20] 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 ID we can have [05:16:34] the employee name there. Employee name can be of variable to be different. So we can say maybe employee name can go to 50. And then their skill set what they are working with. So we will go ahead and keep that [05:16:48] as well. Car again and this is 52 because these are the skills that we are talking about. They are also going to vary it. And then we have their vary it. And then we have their experience. Experiences can be in um [05:17:00] years. So we are keeping it integer for this purpose. So this is a small table a structure that we are se creating right there. Now see here we have created a database. We have create a table. But I'm not going to execute any of it right [05:17:12] now. After creating the table here we are inserting the values. So 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 [05:17:26] see I want you to go ahead and insert the database. Insert the values into the employee input table where the employee input table is. Employee input table here is certain database in a certain table. And what we want to enter here, [05:17:40] values. will go ahead and actually write individual row there. So for example, there, we'll go ahead and type that column number one data for row one. Then [05:17:56] we 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. Fourth is the experience. We're typing the experience in years. We type a comma. [05:18:09] This is just 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 [05:18:21] and now we have got a skills there. We give the skills there and here we have 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 [05:18:33] individual rows right there. This is how we insert the values of row by row. So if we have four columns there we will be typing four values. So here we go ahead and type insert and enter into into where into db joins [05:18:47] employ info right here into db joins employ right here. Now inside this here we want to go ahead and add up the values and how does the values look like. So here we go. We can say here that this is a 23 here. That's the [05:19:02] employee ID we are giving with four characters. Since all of this is either characters. Since all of this is either alpha numeric or it is right now pure numerical here or alpha numeric or the alphabets here we have to type it [05:19:16] within the quotes there. If these are in numbers the numbers will go right away. will be written without the quotes because it's a number it can be read as a number. Now like this you'll go ahead and type each and every row here. [05:19:30] whether it's a a 1 to 23 here. So maybe this A1 to 4 here and more names and SQL columns. 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 [05:19:44] here done till here. So now what we have done we have went through we have created a database we went ahead and we created a table right there and we inserted the values too. Now how do we go ahead and [05:19:57] and execute this one? Now listen to me very very carefully everyone. I want everybody's attention here please. I'm going to go ahead and select all the three different statements. Right? See the semicolon here. Right? All three are [05:20:13] separate statements. I'm going to select them all together. And we are going to go ahead and click on the first lightning bolt right here. Why first lightning bolt here? Because this means execute all. This means execute all the [05:20:27] selected rows. So we'll go ahead and click on execute all right there. So it 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. [05:20:43] Now once it is executed of course nothing will be shown in the scheme. So we have to go ahead and and refresh it. Once you refresh it, we see it. See? And inside this DB joints here, you'll [05:20:56] find the tables. And inside tables, you'll have the columns. 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 link. Remember, select all the [05:21:10] three statements. Great. Now, let's go ahead and create another table. Okay, similar to this. We'll go ahead and type create table because we need two tables to join everyone. We'll go ahead and type uh type create table again. And [05:21:24] again we are going to create table of 50 joints here. And let's name it employee salary. So we'll have the employee salary details here. And I'm going to employee ID because that's what we need [05:21:36] here. It is going to be exactly similar to here because data type has to be to here because data type has to be similar. It is the exact same column. Exact same column name here. Now here we need designation there. This is [05:21:48] designation. It can be vera. It is the name of the designation there. Let's 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 [05:22:02] keep the salary details under quote is decimal. Okay remember that here. So that's here we have created a table. Now inside this table let's go ahead and insert the values here. So let's insert some values here. So we [05:22:16] want to insert the values inside the DP joints employ. This is the table here and we want to go ahead and set some values here. Remember three columns three values everyone. So first is employee ID. So let's say the employee [05:22:29] employee ID. So let's say the employee ID is uh 1 2 3 here and let's say their designation is one for example and then what we have salary. So I'm writing some random numbers here and salary here. So again let's go another 10 A126 here [05:22:47] So again let's go another 10 A126 here and maybe table will two and again another number here for their salary part here we go this is another employee number here let's say [05:23:02] they also belong to L2 here and again a random number here for the salary part let's add one more row uh right So there are too many user. Okay. So here we go. I'm adding one more part [05:23:17] here and this person belongs to L3. So these are different designations right now here. And let's have again [05:23:29] right now here. And let's have again random number right here. rows we are adding up. Okay. So this these are the four rows. And let's go [05:23:41] 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 We'll go ahead and we select everything right here. Okay. And we execute all [05:23:53] together. Once I execute all together only once we refresh the table here, we get to see the employees are right here. Okay. So, how do we go ahead and write join everyone? So, to write join here, we again have a syntax. the way to type [05:24:09] 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 that we are you how the tables look like. So, this is the employee info table everyone. [05:24:23] This employee info table has how many rows? Five rows right here. Right? So, joints table. Let's look at the employee salary here. It has got four rows. It has got four rows right here. So this [05:24:37] is our second employee sly table right there. Now what we want here we want to go ahead and see how to type a join. We will go ahead and we want to go ahead and merge both the tables together. If we type we are want to move forward and [05:24:50] 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 now we'll say I want all the columns from the merge table. We have no choice for now about [05:25:03] 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. Where do we type the joints here? Inside the from because two the from keyword will inform [05:25:16] 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 employee info is? Employee info is in the DB joint. So I'll say go to DB [05:25:30] joints and go to the employee and then join it with the second table. So what let's say we are first looking at here the left joint. We are first looking at the left joint. So we type the word uh [05:25:44] keyword over here left joint. Now which one is the second table? Second table here is again that DB joins and employee salary. This is our second table right salary. This is our second table right here. Is this enough information? Now we [05:25:57] have to go ahead and also define which one is the common column. So we go ahead and we type it here using. Using is a keyword which will inform which one is common column between the two tables [05:26:10] 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:22] 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 SQL that see I want you to merge the [05:26:36] these two tables together by using the employee ID column and then employee ID column we are mentioning it only once. Why? Because the spelling of common column is similar. It's exactly same. Common column is exactly same in both [05:26:52] Common column is exactly same in both the tables. real time this doesn't happen. We do not have the exact same name. For now we have it. So we are going to go ahead and execute it right here with simple uh [05:27:07] bolt or control enter. And look at the left join everyone. Do you see the left join right now? How many rows do we have here in the left join? Five. Why five rows? Because employee info is my left table and this [05:27:21] contain five rows. So here we will also have the five have null values only the common uh rows here only the [05:27:33] common rows here are having the values written properly till the end. However you must be wondering that why we are typing DB joins DB joins multiple times here. Okay, if you will go ahead and you make sure that you are making sure that [05:27:48] DB joints is a default then we don't have to type that we can then type type directly here, we again go ahead and start with select here and we type a strict science and we'll say that from from where now we can go ahead and type [05:28:03] directly that okay go to employee info and this time let me type right join here right join it with what we have employee salary right here but now this time instead of typing using here we [05:28:17] 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:32] 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 another keyword font. In this on here we can now define that go to employee info. [05:28:46] Inside employee info you're going to find a column called as employee ID find a column called as employee ID which is exactly equals to the employee salary table which has a column called as employee ID. [05:29:00] So we use on here right so prefer the prefer uh preparable method is always on. Why? Because we have no idea that uh whether it is always going to be the same or not. Okay. So preferred method of defining a common column [05:29:15] [clears throat] is one. So if I go ahead and type it like this, this is 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 [05:29:29] see we have got the entire employee from the uh different side here. We have got only two matching rows right here. All right. So this is how we can go ahead and type left and right joint. You can see the difference. We have to simply go [05:29:42] ahead instead of left join we are simply typing right here. Let me go ahead and beautify both of them here just to show you how it is going to look like you how it is going to look like and right here. Okay. Go ahead and find [05:29:55] out left and right join. This is how we type join. Take your time and see both 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. [05:30:10] Okay, we have seen uh left joint and the right joint. Easy way to type it out 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 [05:30:23] one more way to type. So before I go ahead and show you here, let's see again we go ahead with select. We say everything here and from in the from [05:30:35] 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 join. So we type inner join here. Type inner join here with our employee s. [05:30:49] 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 inner join output that we see right here. We have employee ID, name, a skill [05:31:04] set, experience. And from the second table, we are only getting designation table, we are only getting designation and salary right here. Okay. What is the other way here? Other way here is this will remain exactly similar. And now we [05:31:16] 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:29] 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:44] We I'll 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 [05:31:59] here 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. equals to the table to employee ID. Okay. And now if I go ahead here and [05:32:14] 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:33] 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 join right now. Go ahead and see the inner join here. Okay. And tell me the difference between the [05:32:47] two outputs. Same inner join 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 column. Go [05:33:00] 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:33:13] these two? And look at the output when we are executing with the using here. Since using assume that we uh both the column [05:33:25] both the tables here have one single column name here. It will keep employee 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 [05:33:38] ahead and and executing here with on 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 [05:33:50] number two even though they have the exact same uh data set inside it okay 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 [05:34:04] is the difference here the preferred is on because in uh real time practices that's what we use and it is easier to 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 [05:34:18] and yes this is how we type alias and we use alias right here it is easier to go use alias right here it is easier to go ahead and define the two separate it is easy to define the common columns with the help of the right here [05:34:36] here what is inner join everyone have you observed something here in the inner 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 that are [05:34:51] going to be exactly equals to the employee ID present in the second table employee ID present in the second table correct this is what uh inner join is out of these two here this uh values in the employee ID one should be exactly [05:35:06] equals to employee ID present in the second table that's what inner join is 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 [05:35:20] create a inner joint merge table without the keyword inner join here. We'll go 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 [05:35:33] this will exactly remain similar. that select everything from employee info and after that we type comma here and we say employee summary. So we need uh the data from both of these table there. Now we go ahead and [05:35:48] type the wear clause and we'll say that where the table one employee ID is exactly equals 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 [05:36:04] the output of inner join. See exact same. So most of the time whenever you will see inner join written there it will be written here not with the keyword uh here but they will be using the where clause here. Why? Because this [05:36:21] where clause will act as a simple filter and it will be quite more quicker in a larger table as opposed to inner join right here. So whenever uh we are typing inner join most of the time professionally they will be using the [05:36:35] where clause to define inner join and remember that this can be done only with the inner join and not with the left and right for left and right we have to type right for left and right we have to type the keywords by what do you mean can we [05:36:48] the keywords by what do you mean can we write from t1 comma t2 these are aliases right so in this line we are actually defining that these are aliases so that we can use them afterwards here. So this was very simple left, right and error [05:37:02] join everyone. Okay, let's go ahead and learn about full auto join here. About full auto join as I've already told you 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 [05:37:15] use here? We use the operator union. We use the operator We use the operator union. What does this operator do? This operator will go ahead and copy paste the table one below the other. So [05:37:29] 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 me give you an example here. Let's say uh every month you have been given the [05:37:42] 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 February then for March now they're asking at the end at the end of the [05:37:56] quarter they're asking that okay now can you give me the quarter wise analysis. So in this case yeah you have got three tables. So how will you go ahead and >> what if you could take a spreadsheet full of raw business data and turn it [05:38:08] into clear insights that make health team. What you will do in that case? So if these are the three data set here and you're getting it one for January, one for February here, how do we go ahead [05:38:21] and keep them together in one single page? [05:38:36] example [clears throat] you have one for January. What if your AI assistant could do more than just answer questions? What if it could help you think? >> Me analysis by combining all the three [05:38:49] files here. How will you combine them as one? >> 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 [05:39:03] exact same structure of the table. Okay. So this here this here is called as a So this here this here is called as a pet action. of this append action we can pet action. of this append action we can do here with the keyword union right so [05:39:17] as we have the keyword union here we have one more operator called as union on so we have got [clears throat] two operators one is union one is union on what is union here union here when it goes ahead and copy paste two tables [05:39:31] together here it will make sure that there are uh no duplicates here it will the duplicate rows if there are any After merge what will union all will do? [05:39:43] Union all will make sure that all the rows are still there. Okay. So >> hello order join with the help of union here because we don't want the duplicate rows there. So basically what is full order join? What is the what was the [05:39:57] definition of full order join? We simply wanted to go ahead and get all the rows from both the tables. Right? If 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 [05:40:11] whatever is the output from the left join, we'll go ahead and we append it with the output of the right joint. So 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. [05:40:26] This is our right join and I will convert this into left join. So if it is left join this is how we 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 [05:40:42] values here. Now if we have the right join here look at this right join output this one when we go with the right join output here we on the left hand side we have got the null values. So we'll simply [05:40:55] 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 to be one single statement and we go ahead and write here post union. I'm [05:41:09] 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 you look at the output here, this is the output from the left join. This is the [05:41:23] output from the right joint. This output is from the right join. and the upper one is from the left one and it is simply written one below the other and now we have the proper entire full auto join in front of us that's why union is [05:41:36] 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 you go ahead and type union all here means keep meaning keep all the rows there the output has nine rows here [05:41:51] 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 repeating here. So see here 1 2 3 is a common row. 1 2 6 is a common row. It is [05:42:06] 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 order we will take care of union. And if we are merging or appending data from [05:42:20] 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 for auto join. So we want to go ahead and see the customer numbers and name of all [05:42:35] customers. What we want to see? We want to go ahead and see customer numbers and to go ahead and see customer numbers and name of all customers along with their order ids along with all the orders they have placed so far in the year 2005. in [05:42:50] the year 2005. A very simple question, right? A very simple question here that we want to see the customer numbers and their details along their order ids. Meaning they should have placed the orders in [05:43:05] the year 2005. So first let's break it down. Okay, let's break it down here. Please tell me first let's figure out from here. So please tell me which tables do we use from classic models to get these [05:43:17] details. So customers table can give us customer number and orders table here can give us the order details. The order numbers are here that's orders here. Now which one [05:43:29] 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? B ID one is the common column between the two? But both of them in between there [05:43:42] 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 are [05:43:57] 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 what which rows [05:44:09] 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 [05:44:21] looking for the common rows out there that if the customer has placed the order then only we need the detail or we need all the customer has to be there only the related orders. What are we looking for? Because in a customers [05:44:35] table, we'll have all the customers that are currently registered 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 [05:44:49] ahead with inner join. Why inner join? Because I want the customers who have 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 [05:45:04] go ahead with inner join here because we want only the customers who have placed the order so far. So we 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 [05:45:20] first I'm typing uh everything for now. 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 here I'm getting customers table. I'm going to name that as C. We are going to [05:45:33] inner join it. We are going to inner join it and we will inner join it with 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 [05:45:47] still get it but uh I will still type it here just for the clarification. Now when we type on here and we can use the aliases right there. We can say that go to the customers here. Right? That is we are typing SC [05:46:03] going to be exactly equals to what you 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 [05:46:20] from here. Okay. Now I would like you to 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 [05:46:34] when I am scrolling towards right here 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 [05:46:50] yes meaning in the output here we have 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 [05:47:04] similar customer number and they both are coming from two 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 [05:47:18] there and from the customer table you get me the customer 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 [05:47:32] it directly that okay get me customer name what we want next here they uh we 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're asking us for the year [05:47:45] 2005 right so let's go ahead and get order date that's what they're looking for auto 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 [05:47:59] it will give us the error. Now once we have this here all right are all dates are from 2005 are all dates are from 2005 here? [05:48:19] 2005 then? 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 [05:48:32] what is the filter that the year should be 2005. Do we have a year column here? separately. But we can go ahead and extract the year as we have done before [05:48:44] from the order date. Yes, absolutely correct. from the order date here it should be equals to 2005. And now when we execute equals to 2005. And now when we execute this right here we get this. [05:48:58] this right here we get this. Now dates are already from 2005. now so that it looks clean cleaner and visible. Go ahead and check this out. [05:49:10] 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 do have keywords right we we have keyword called as cross join and join [05:49:22] 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 here what is a cross join everyone cross join has no common column concentrations [05:49:36] it is a simple cartesian product is a simple cartisian product those who are from the mathematics background they might remember this all right those who are Not you're like me don't worry about it at all. Let's understand what [05:49:49] cartisian product is. So for example here okay here are few numbers. Okay this is our column number one and this here is the column number two. So here [05:50:01] 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 that we have here. This is first column here and this is second column. Now what [05:50:14] we are looking for here we are saying that we are trying to understand cartisian joining what is a cartisian joining here that in the output in the output here I want to merge these tables together however since there is no [05:50:28] concept of common column here what it 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 [05:50:40] ahead I'm typing one here in the output in front of the one here all the Three words will be typed and this one will be repeated. This is going to be the output that is cartis. Then we have got two here. [05:50:52] Right? So this two here will get multiplied to all these three numbers right here again. Here we happens with three here. Okay. Same happens with three here or three will [05:51:05] also go ahead and get multiplied to all the three values right here. [05:51:17] 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 that okay 11 one is getting multiplied by these four numbers here and this is called as cartisian product. [05:51:29] But how does it make sense if we have 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. Let's say we work in FMCG sector. I hope [05:51:45] you all understand FMCG there. All right. And we have got different product right. And we have got different product mix out there. So this is uh my products and this here the flavors that we will provide. Okay. I don't know what to call [05:51:59] want to call them. 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 washers there and soaps out there. And we want to have we have three flavors we have figured [05:52:13] 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 figured out that these are the products we are going to offer and uh we have got these [05:52:29] three flavors and based on these three flavors here we are going to create the flavors here we are going to create the entire product line for these. Now the cartisian product or the cross join will come in action and it will go ahead and [05:52:41] output here? It will go ahead and get the shampoo here and this shampoo should And this shampoo is going to get repeated of course. Now this is the hand [05:52:53] 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 there. Same all the three values right there. Same happen with soap zero [05:53:10] 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 when [05:53:26] we are talking these these kind of mergers here okay this is where the cross join comes in and this is called as cross join so let's take a quick example here and uh We have all been uh [05:53:40] 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 a an offers. Yes. So let's uh take a an instance that uh right now our cafe has [05:53:54] 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:54:09] beverages and they want us to find out what will be the prices and what are the possible combinations they can offer. So 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 [05:54:22] price that they should be offering there. So both 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. [05:54:35] So first 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 simple cartisian joint first decent product there. Basically what we are looking for we are looking [05:54:49] for multiple possible combination between the two tables. And of course we 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 [05:55:02] ways to type it. First way here is to use the 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 [05:55:16] to go ahead and set the default back as DB 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 is employee info. I'm calling this [05:55:32] that 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 there is no common column concentration we are we don't have to [05:55:47] type anything else here because when I go ahead and press uh and execute this here look at this it makes no sense for now but we can see here that here this 1 [05:55:59] 2 3 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:56:14] simple query. We will not type the keyword at all. So if I don't type the keyword at all here I what what we do we type here we'll say select everything [05:56:26] type here we'll say select everything from from where from employee info comma 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 exact same output [05:56:41] this is what we exact same output okay so we can type it without value two Right. Go ahead and find out the cross join here. Very simple thing here. And then we will create a small two tables. First we'll come back. First we create [05:56:56] the small two tables there. Okay. Then we'll move forward and create a cross join and create combo first for the cafe there. So let's uh create the database here. I'm going to call this database as cross table because that what that's [05:57:09] what we are going to do here. We going to use the cross join right now. And inside this we are going to create table. What is the first table we are here? First is the food table. Everyone please [05:57:22] pay attention here. We are first going to create food table here. Inside the food table we are going to keep item code, item price right here. We go ahead and keep item code, item name and item price right there. Now we insert the [05:57:38] values into it. So we can say insert into where? into where? Insert into [05:57:51] Frost table dot 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. So let me tell me what do you would you like to eat? So this is I typing item code is 1 [05:58:03] 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 rice in there. Yes. What would you like to eat? What is the next thing that [05:58:16] let me go ahead and give another food item right here. And uh here we go. One item 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. [05:58:32] Okay, I saw Maggie first. So, let's keep the Maggie right here. And let me give it a random pricing again. These are the food items, right? This is our food table right there. I will select this entire thing and execute it right here. [05:58:46] Refresh 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 cross table dot beverages. [05:59:00] 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. [05:59:12] Now inside this here I will go ahead and insert the values again. So which values do we want to insert here in the cross table by bridges and we want values table by bridges and we want values right here. That's values. [05:59:26] Now first one here is the code. So let's code as we want to here and yes what would 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 [05:59:41] would you like to drink? Second, I'm keeping let's say B13. keeping let's say B13. Okay. This [05:59:56] have the coffee right here. Very good. What's next? What else would you like to drink? We need one more drink, everyone. So B4. I'm leaving it be four here. Ah, very good. Yes. So, we'll go ahead [06:00:14] with lime soda right here. And this is a 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 [06:00:30] tables. One is the beverages table right 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 [06:00:46] select them together execute them together only once and refreshing them okay both the tables are there and web pages okay we'll make sure that we are pages okay we'll make sure that we are typing here use cross table so that I [06:00:58] will make sure it is set as default okay now let's go let's go ahead and merge them together we simply want the cartisian product the cross table here. to select of course we are looking to select all the columns there and from [06:01:14] where from both the tables here. So say get from the pool here we are calling it get from the pool here we are 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 [06:01:29] right now is just the list here but we have to play the combination here. We 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 one item here, okay, is combined with all [06:01:43] the three bridges right here. Okay, so again see here this is here. It is 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, [06:01:56] we still have their individual prices. What we want to add? We need to add a price of the combination. the combination as spot. So first let's go ahead and now we'll add two columns here. All right, we are calling it total [06:02:12] price and the combo price. We'll add two 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 [06:02:26] everything from here and copy this and paste it here and type I'm going to make 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 [06:02:39] simple. We'll ask it then go table number one that is the food table there and from the food table get the item price and add that with the table to [06:02:51] beverage prices. There we can keep it under 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:03:11] 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:25] Meaning we are charging them only 90% of the total price. So we'll go ahead and we will type here 0.9 right here. So this is this just the 90% of the total [06:03:37] price. We cannot simply use the total price here one 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 [06:03:50] we'll go ahead and type 0.9 here. I'm going to call this as combo price right going to 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:04:05] Currently, I'm going to round it up to no decimal point. [06:04:20] 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 the name here so that we can utilize these names inside the calculation. What [06:04:36] is self join everyone? Self join is not a keyword. Self join is not a keyword. Okay. And uh let's understand it clearly. Self join is very different from any other joint we have seen so [06:04:51] 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 the self join in one single we'll do the self join in one single table based on columns within the same [06:05:07] table. Based on columns within the same table. Why do we use the self join here? Whenever we 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 [06:05:22] hierarchies. It makes it easier to retrieve the interconnected data within the same table. And remember that there is no specific keyword called as join. [06:05:35] Okay, let's understand it better. To understand it better here, let me show you here the employees table. Okay, so let me go ahead and show you the employees table we have in classic models. Right? [06:05:51] This is the employees table everyone. Okay. In this employees table here, do we have a column which has almost common data set inside it? [06:06:14] 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 uh anyone whom they are reporting it. Okay. So this is our management here. [06:06:31] This is 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:47] this employee? Employee here. Let's figure it out. So this employee 12 here, who is this person? Is this person Dian Murphy? Yes, that's the name here. This [06:06:59] person Dian Murphy has the employee ID of 02. And this person is president. 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 [06:07:13] Let's talk about 1056. Mary Patterson here. Mary here is reporting to 12. here. Mary here is reporting to 12. Who is 22? Dying. And what is the designation of 1056 Mary here? The designation of Mary is PP sales. But she [06:07:29] Mary here is reporting to president. quite confusing to understand especially 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 [06:07:42] is one reporting to 1056 that is uh William is reporting to Mary and is 1056 sales manager? No, no, no. William is sales manager. So here everything is written in one [06:07:56] single line. However, will it be easier to read if we will uh go ahead and 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 [06:08:11] ID, we will have manager name and then we will have the manager job titles. Manager job titles here. After this year, after this year, now we can go [06:08:24] ahead and get the employee ids and employee names employee names and their uh job details. [06:08:41] 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 [06:08:53] particular self join will help us to restructure the table so that we can see 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 [06:09:06] hierarchy. So product category product subcategory product brand product colors product sizes this all all is hierarchy. So if you want to see a proper historical table okay this is not how the tables are actually uh collected the [06:09:20] data is collected. So we restructure it by using self join. So 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 [06:09:35] type the join here? Let me show you uh here. How do we type the join? Let's 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:51] join. We will go ahead and use the inner join. Now we are about to do the inner join on one single table. Right? So how do we mention uh only one table inside the select statement? So we'll go ahead with start with the select everything. [06:10:05] 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 pro and we'll say that go to employee table and we name the employee table E1 and then we will define the [06:10:22] 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 [06:10:34] same table as two separate tables. And of course we go ahead and we define the common column. Now the common column here is going to be our two separate columns. One is employee ID and another is manager ID. You'll say that we this [06:10:47] is the same table. Treat them as two. And based on these common columns, you go ahead and merge them together. That's how we uh that's how we go ahead and get how we uh that's how we go ahead and get the self joining them. Okay. So stay [06:11:00] here. Okay, I going to show you. I'm going to write this here uh uh 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:11:18] Currently I'm typing select every select everything and then from from where from 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 employees table but [06:11:35] 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 we'll ask it that which uh particular column is similar here [06:11:55] 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 very carefully to in the output. Let's look at very carefully in the [06:12:09] 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:23] go. Let's look at the join output here. See here we have got employee number, last name, first name. Observe here that this first column here contains employee number of whose [06:12:46] everyone right if you will see this Murphy Mary here these both are the per 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 are [06:13:01] the job titles. Look at the job titles. Okay, all these people are this is for Murphy who is president. Mary S is VP sales. Everyone else is a sales manager. If you go here, no one is below than sales manager other than this one. All [06:13:18] are here meaning someone is reporting to them. So the first part that we see 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 [06:13:31] look here all these people are reporting to someone. Mary is reporting to the president here uh Jeff is reporting uh William is reporting to Mary back here. So we have all employees staff here. We have got [06:13:46] the stuff 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 right now. And who is the VP sales? Mary. So right now in this part here [06:14:03] everyone the first first part here are 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 people who are the employees, reporting [06:14:18] 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 paste here and we are going to pick up the columns right here. Now which [06:14:33] 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 ahead and say that okay go ahead to employee one here E1 here because it is on the left [06:14:47] hand side and get the employee number right get the employee number right and this is our manager ID this is our manager okay now this is our first name and last [06:15:03] name I'm keeping only first name right now you can concat them together too so I'm saying that go to E1 and get the first name and this is going to be manager name here this is our manager name right here [06:15:17] after this here we need job title right so we'll go to even dot here we get the job title two from even there and this is the manager titles right these are the manager titles right let me show you the output right now how clean the [06:15:32] output is going to look here so let me beautify this easy here okay and let me show you how the output is going to look like. right now what we have here, we have got manager here and their names and their [06:15:50] manager titles title. Now we can go ahead and choose again. 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 [06:16:04] forward that okay now you go to E2 there from the E2 also get the employee number but this time these are going to be as employee ids and from E2 again we get the first names there and these first names are going to [06:16:19] be employee names right here employee names right there from E2 once we get the job title there this job title is going to be as this job title is going to be as employees job title there text [06:16:35] and once we see it right there say so this is not easy now we can see right this is not easy now we can see right there that uh here okay to the president two people are reporting and to VP there to VP sales [06:16:49] there are three people reporting to Anthony who is a sales manager and maybe not anywhere these many people are these many people are reporting out so now this is our join out table we You can go ahead and do more calculations, right? [06:17:05] But this is how the self join works. Go ahead and check it out please. First join everything together. Okay. After joining everything together, then go joining everything together, then go back and uh pick out the corners. Okay. [06:17:20] So let's do one thing here. Now 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 this is the self join right here. I'm going to share it in the parts. [06:17:34] 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 has such a effect here. If you will see it closely. All right. It is simply [06:17:49] 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:18:01] 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 very very simple question here that calculate the total sales amount for [06:18:16] calculate the total sales amount for each year and quarter. Let's take it out each year and quarter. Let's take it out from here. columns do we need here in the output? What we are talking about? How many [06:18:30] 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 and then we are looking for quarter and [06:18:42] 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 placed inside classic models only. [06:19:06] Order details do not have date. Order details do have quantity ordered and details do have quantity ordered and price. Which table has date everyone? Orders table. Remember the date functions right? So we need orders table [06:19:19] and from where are we getting the total sales amount. quantity with price each that in individual order here how much quantity [06:19:33] has been ordered and what was the price paid for each. So we need all the details table everyone. So please tell me is there a common column between them so that we can figure out each year how much has [06:19:46] been paid for the orders. Do we have a common column? [clears throat] common column? [clears throat] Common column we have here. Yes. Order number. Very good. What will be the calculation for total [06:19:58] sales here? 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? Because inside this order these many different product has been ordered out. [06:20:13] This is the quantity of individual product and this is the price paid for product and this is the price paid for each item. Right? Very good. So we need to go ahead and multiply quantity order with the price. Once we [06:20:26] 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 join them together. Okay. Right. So we need [06:20:43] 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 don't want to add a calculated column. We want to add it up. So we go ahead and [06:20:57] type sum in front of it. Okay. So this is how we get the sum. So from and select is defined. Okay. Let's go ahead 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 [06:21:12] have the access to. So we will say select everything from where. So from uh we have got orders table first. I'm going to name orders table and which join we should go ahead with. Now here we are not sure if I say inner [06:21:29] join uh we might compromise the data set. What if uh we haven't received anything yet, 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 [06:21:43] is or how the how the data model is created at the back end, we are not sure about that about the table 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 [06:21:58] and we type OD. We type OD right there. Okay. So after we write this join here we have to again define the common column here. So we can go ahead and say on here from the orders table we know the common [06:22:11] 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 fine. Let me uh show you the entire table. See here this is the order number. This is the order [06:22:26] date. every month in front of the order date. Here we have individual price and quantity right here. Okay, everything out here. We are simply looking for year quarter and total [06:22:41] 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 aggregate the each book quantity order and price each as per that year and quarter right there. Yes, I'm answering [06:22:55] that there. So, uh see here how many uh total rows are in the orders. Everyone total rows are in the orders. Everyone total rows in the orders table itself total rows in the orders table itself we have 326. Okay, in order details we [06:23:10] have again 326 rows. So let's see here order details has 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 simply typing the join here, how many [06:23:25] rows do we have now? 2986. Okay, what does this signify here? What type of join are we doing right now? When we go ahead and define join in my SQL, okay, it will get only matching [06:23:40] 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 part. Okay. Yes. Inner join. So right [06:23:54] 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 best join to go with and there you will get the lift. [06:24:09] ahead and simply type join here. will act as the inner joint for now. And now we go ahead and uh see here with the ear. So this is ear. What do we want in [06:24:21] the ear? Auto date. And I'm calling this just ear. We want quarter there. So this is quarter. This is it. Auto date. And I'm [06:24:33] quarter. This is it. Auto date. And I'm going to call this as quarter. we get the total price here? We can simply go ahead and say that go to uh order details here get the quantity order multiply that with price each [06:24:48] order multiply that with price each right here and we can call this as 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 [06:25:03] go ahead and sum it up and remember when we are aggregating something here select group by we'll go ahead and get the individual year unique year and unique quarters right there. So in group by year we'll type 1 comma 2 that's what we [06:25:17] year we'll type 1 comma 2 that's what we are looking for and here we are we have got year we have got quarter right there and the total sales right there and the total sales for for each year and quarter and if you [06:25:30] want to add the total and subtotal there right so you want to go ahead and add total and subtotal how do we do that everyone within the same thing you want to add uh grand total and subtotal how do we do [06:25:43] grand total and subtotal how do we do that in the sim similar one here that at the end we should know uh for all the five years total and for each year sub total should be there too. Yes, we will get the exact same thing here, [06:25:56] we will get the exact same thing here, but we will use with rollup. With rollup but we will use with rollup. With rollup is the entire keyword right here. [06:26:09] 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. we want to do right now? We want to retrieve the customer details right now. [06:26:24] Name, id, country and we want to calculate average order amount. Average calculate average order amount. Average total order amount by each country. So total order amount by each country. So basically we are talking about. [06:26:39] Okay. The purpose is to retrieve customer details and the average order amount by country. So we want to retrieve we want to write a query to retrieve average order amount for each customer in each country. Each customer [06:26:55] in each country. So what is this average order amount we are talking about? We're talking about this only quantity order and price each. This is the total sales uh there. But we want to calculate average of it this time. We want to go [06:27:07] ahead and calculate average of this this time. That's the difference. Okay. And how does what should the output contain here? Output should have first your customer names and ids, right? So, customer name here, [06:27:23] customer name here and country. This is country right here. And this is here we should have the average. This is where we should have the average. Now but we want to see this report here only for the customers only [06:27:40] include the customer details who have who are the high ticket customers for us. So we include the customers who have an average order greater than $3,000 [06:27:54] than $3,000. than $3,000. Now let's figure out Now let's figure out that which tables do we need? [06:28:11] get customer name, country and average and average contains here quantity and average contains here quantity orders and price. with from where do we get see order details [06:28:25] is very evident here because we are getting the quantity details here 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 [06:28:40] customer name and country everyone from where do we get that be customers here we get customer name country from there and the second table [06:28:52] and check it out please. We need a common column to connect them. Do we have customer number and order details? [06:29:17] 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:32] 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 here, do we have any common table? So right now we have two tables. One is customers, right? And another is [06:29:47] all details table. And in both of the case here we do not have any common column between them. So if you do not have a common column here do we have uh here any common table? Customer has [06:30:00] customer ID 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 [06:30:16] that is orders table. Everyone why 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. So what we have to do here is okay we [06:30:33] 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:45] 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:31:00] data set just by scrolling up and down. Yes. So let's go ahead and see how to Yes. So let's go ahead and see how to type it and what we can do to avoid it. All right. So let's see here. How do we type it here? So now we understand we [06:31:13] need a third table the entire table here that is orders. So we have got multiple we go ahead and type multiple joins everyone. So to type multiple joins [06:31:25] here. Okay for remember that we can join 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 [06:31:41] details table with order number as the common column because once it is joined whatever big table is there that will contain the order number within it. Okay. I'm going to go ahead and type select everyone. [06:31:59] the select here I will come back to it. First let's figure out from here. So connecting with all this customers table here. This is customers table. I'm going to call this as C and I'm going to join [06:32:12] it 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 [06:32:28] customer number. So we'll ask it to go to customers table and get customer number. which is going to be equals to orders table customer number. Till here everything is fine. Now what do we do [06:32:42] next? In the next here we will simply go ahead and type join again. And here we will ask it to go ahead and get order details. We'll name the order details as details. We'll name the order details as OD that join the order details OD based [06:32:56] OD that join the order details OD based on what? based on based on get the from 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 [06:33:11] three tables are joined together. See customer table right there. This is our uh credit limit order number. This is order state here and third here you will find is the price each quantity order details table. Now all the three tables [06:33:26] are joined together. 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 [06:33:41] 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 place it. [06:33:56] Close the bracket here. Let's keep the two decimal points there and close the two decimal points there and close 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. [06:34:12] So we have right now three things around here. When we execute this here, is it going to work? No. Why? because we're aggregating it everyone. What we are doing, we're aggregating it out here. So we have to group it by. So we going to [06:34:25] go ahead and group by it with one comma. We have two things customer name and country. And here we are. Okay. We want to include the customers who have an average order amount greater [06:34:40] than 3,000 only. So how do we go ahead and place a filter here? So we have average amount here. And yes, we have some above 3,000, some below 3,000 here. [06:34:52] We have multiple type of amounts here. So, how do we go ahead and place a 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? [06:35:06] So, tell me is average column is present in the database. Is it present in any of these tables here? Any of the columns of these tables here? The average [06:35:18] Now average is a aggregated column with the help of group by correct. So if we aggregating some column here with the help of group by and we calculating it right here how do we go ahead and give a filter here everyone [06:35:33] with the help of having with the help of having here. Why? because uh uh having 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 database. So in [06:35:49] 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. You can keep on going and uh give multiple other filters also there that you want to go [06:36:04] 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 you can go ahead and keep on giving you can go ahead and use any any filter [06:36:18] operator that we have seen so far and where clause everything can be used inside having too. Okay. When we will talk about the optimization here we will learn something everyone that uh we are not supposed to give a filter which can [06:36:34] be easily given with the help of where clause. So this country equals to USA we could have given this with where clause we will not give it with having that is the optimization but both are correct. What if we can go ahead and keep why are [06:36:49] 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 calculation you want, you can simply uh go ahead and extract a column out of [06:37:01] this. If the entire table is here, all the order details, customer details, the order details, customer details, product details, order details and date status, everything is here. Wouldn't this be easier? We don't care of the [06:37:14] this be 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 degrading the performance means it will lag a lot and it is going to have too [06:37:29] 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 easy thing to do here because there are too many duplicates. Correct. It will [06:37:43] 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 too because you need to handle such a huge data and since it is just one [06:37:57] 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 an HR uh simple order uh per an operations team who will go ahead and process the [06:38:13] order and everyone everyone will be only talking about this table and uh transactioning with this table only and there will be a lot of lack because they do this with the help of LAN or any internet connectivity there so this is [06:38:27] 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 customers giving us multiple orders. So every time [06:38:42] 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 will be uh will be there too. And since we are maintaining only one single table [06:38:57] 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:39:11] to go ahead and add one more column here and tell them whether they're 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:25] 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:40] 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:54] 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 have added new addresses inside it. It is very difficult to [06:40:09] 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 lag. And because of this [06:40:24] 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:40] 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 preditional data with analysis, reporting, [06:40:53] 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:41:08] 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.