Предлагаю решить очередную небольшую задачу по SQL 🙂💪
Есть таблица CLIENTS (клиенты), имеющая, среди прочих, столбцы:
ID_CLIENT NUMBER PRIMARY KEY,
NAME_CLIENT VARCHAR(100) NOT NULL
И есть таблица INVOICES (счета клиентам) со столбцами:
ID_INVOICE NUMBER PRIMARY KEY,
ID_CLIENT NUMBER NOT NULL,
AMOUNT NUMBER NOT NULL
В таблице INVOICES столбец ID_CLIENT определён как внешний ключ (FOREIGN KEY), ссылающийся на таблицу CLIENTS на поле ID_CLIENT.
Задача вывести все столбцы из таблицы клиентов, а также дополнительными столбцами вывести "количество продаж для каждого клиента" и "ранг клиента". Чем больше счетов выставлено клиенту, тем выше его ранг, такие клиенты должны быть выведены первыми в отчёте.
Попробуйте решить задачу сначала самостоятельно. Попозже напишу решение этой задачи! 🙂👌
Есть таблица CLIENTS (клиенты), имеющая, среди прочих, столбцы:
ID_CLIENT NUMBER PRIMARY KEY,
NAME_CLIENT VARCHAR(100) NOT NULL
И есть таблица INVOICES (счета клиентам) со столбцами:
ID_INVOICE NUMBER PRIMARY KEY,
ID_CLIENT NUMBER NOT NULL,
AMOUNT NUMBER NOT NULL
В таблице INVOICES столбец ID_CLIENT определён как внешний ключ (FOREIGN KEY), ссылающийся на таблицу CLIENTS на поле ID_CLIENT.
Задача вывести все столбцы из таблицы клиентов, а также дополнительными столбцами вывести "количество продаж для каждого клиента" и "ранг клиента". Чем больше счетов выставлено клиенту, тем выше его ранг, такие клиенты должны быть выведены первыми в отчёте.
Попробуйте решить задачу сначала самостоятельно. Попозже напишу решение этой задачи! 🙂👌
Напоминаю, что ещё открыта запись на интенсив Разработки в MySql со мной, который стартует 8 января 2024.
Следующий поток планируется в марте.
Сейчас записаться на курс и оплатить его можно с хорошей скидкой:
https://prime-soft.biz/courses/mysql
ЧЕМУ МЫ НАУЧИМСЯ
- разрабатывать высоконагруженные базы данных (Database design);
- программировать на языке SQL/PSM (внутреннем языке программирования MySQL, который аналогичен языку T-SQL в MS SQL Server и PL/SQL в ORACLE);
- создавать хранимые процедуры, функции, триггеры;
- использовать преимущества MyISAM и InnoDB таблицы для решения разных задач;
- выявлять ошибки в коде и бизнес-логике. Использовать для этого стандартные средства СУБД MySQL, которые она поставляет. Начиная от версии 5 и до 8ой;
- выявлять проблемные и долговыполняющиеся SQL-запросы и оптимизировать их;
- пользоваться транзакциями правильно, как это делают в больших софтверных компаниях;
- бороться с взаимными блокировками (DeadLocks);
- пользоваться вычислениями в запросах (аналоги аналитических / оконных функций);
- конфигурировать MySql, правильно выставлять параметры, обеспечивая максимальную производительность.
КАКИЕ НУЖНЫ ПРЕДВАРИТЕЛЬНЫЕ ЗНАНИЯ
- разумеется базовые навыки SQL (умение писать запросы, пользоваться командами SELECT, INSERT, UPDATE и DELETE);
- желательно понимать что такое индексы и как ими пользоваться;
- навыки создания таблиц.
Идеальная подготовка - наш базовый курс SQL. Базы данных. ORACLE. MS SQL Server. MySQL
ФОРМАТ КУРСА
- 12 он-лайн занятий (вебинары) три раза в неделю (пн, чт в 19:30 и сб в 9:30) по 1.5 часа;
- вебинары будут доступны в записи участникам курса;
- самостоятельные практические задачи (д/з) с совместной проверкой и разбором работ;
- закрытая группа в Телеграмм.
Записаться можно тут
https://prime-soft.biz/courses/mysql
Следующий поток планируется в марте.
Сейчас записаться на курс и оплатить его можно с хорошей скидкой:
https://prime-soft.biz/courses/mysql
ЧЕМУ МЫ НАУЧИМСЯ
- разрабатывать высоконагруженные базы данных (Database design);
- программировать на языке SQL/PSM (внутреннем языке программирования MySQL, который аналогичен языку T-SQL в MS SQL Server и PL/SQL в ORACLE);
- создавать хранимые процедуры, функции, триггеры;
- использовать преимущества MyISAM и InnoDB таблицы для решения разных задач;
- выявлять ошибки в коде и бизнес-логике. Использовать для этого стандартные средства СУБД MySQL, которые она поставляет. Начиная от версии 5 и до 8ой;
- выявлять проблемные и долговыполняющиеся SQL-запросы и оптимизировать их;
- пользоваться транзакциями правильно, как это делают в больших софтверных компаниях;
- бороться с взаимными блокировками (DeadLocks);
- пользоваться вычислениями в запросах (аналоги аналитических / оконных функций);
- конфигурировать MySql, правильно выставлять параметры, обеспечивая максимальную производительность.
КАКИЕ НУЖНЫ ПРЕДВАРИТЕЛЬНЫЕ ЗНАНИЯ
- разумеется базовые навыки SQL (умение писать запросы, пользоваться командами SELECT, INSERT, UPDATE и DELETE);
- желательно понимать что такое индексы и как ими пользоваться;
- навыки создания таблиц.
Идеальная подготовка - наш базовый курс SQL. Базы данных. ORACLE. MS SQL Server. MySQL
ФОРМАТ КУРСА
- 12 он-лайн занятий (вебинары) три раза в неделю (пн, чт в 19:30 и сб в 9:30) по 1.5 часа;
- вебинары будут доступны в записи участникам курса;
- самостоятельные практические задачи (д/з) с совместной проверкой и разбором работ;
- закрытая группа в Телеграмм.
Записаться можно тут
https://prime-soft.biz/courses/mysql
prime-soft.biz
Prime | Обучение программированию в MySQL (SQL/PSM)
Уроки и курсы SQL, MySQL, Базы данных, Программирование с практическими файлами и материалом.
Пишем на SQL
Предлагаю решить очередную небольшую задачу по SQL 🙂💪 Есть таблица CLIENTS (клиенты), имеющая, среди прочих, столбцы: ID_CLIENT NUMBER PRIMARY KEY, NAME_CLIENT VARCHAR(100) NOT NULL И есть таблица INVOICES (счета клиентам) со столбцами: ID_INVOICE …
Здравствуйте, друзья!
Судя по тому, что от Вас сейчас приходят много решений самостоятельных работ наших курсов - все учатся в "ударном" темпе!!! 🙂💪
Хорошее завершение года! С новыми знаниями и умениями в Новый год!
🎉🎄
Посмотреть решение задачи по SQL, которую я публиковал ранее, можно здесь: https://dzen.ru/a/ZY4E7yoEzhEl_zZu
Я уверен, что Вы итак с ней справились 🙂💪 Можно просто сверить решение.
Судя по тому, что от Вас сейчас приходят много решений самостоятельных работ наших курсов - все учатся в "ударном" темпе!!! 🙂💪
Хорошее завершение года! С новыми знаниями и умениями в Новый год!
🎉🎄
Посмотреть решение задачи по SQL, которую я публиковал ранее, можно здесь: https://dzen.ru/a/ZY4E7yoEzhEl_zZu
Я уверен, что Вы итак с ней справились 🙂💪 Можно просто сверить решение.
Дзен | Статьи
Небольшая SQL задача с подзапросом и аналитикой
Статья автора «Илья Хохлов» в Дзене ✍: По условиям задачи, нам даны две таблицы: таблица CLIENTS (клиенты), имеющая, среди прочих, столбцы:
ID_CLIENT NUMBER PRIMARY KEY,
NAME_CLIENT VARCHAR(100)
ID_CLIENT NUMBER PRIMARY KEY,
NAME_CLIENT VARCHAR(100)
👍4
Друзья, всех с наступающим новым годом!
От нас Вам самые добрые пожелания: успехов в профессиональной и личной сфере, новых горизонтов и внутренней гармонии!
Как мы работаем на праздниках:
1 - 3 января у нас выходной. Затем мы проверяем работы и отвечаем в режиме выходных и праздничных дней, то есть два раза в день (утром и вечером).
Спасибо Вам:
Помните, год назад, также, под новый год, я загадал, что к следующему новому году получится набрать 1.000 подписчиков на канале! Благодаря Вам отчасти это получилось! Сейчас нас 700! Конечно, до 1.000 далеко, но ведь за год пришло 500 и это не мало!
На этот раз не буду загадывать:)
Буду стараться, как и сейчас, публиковать интересные задачи с реальной практики и с собеседований по SQL! Спасибо, что присылаете нам примеры и разрешаете их публиковать! Благодаря Вам, все могут попробовать свои силы! И спасибо за активное участие в опросах!
С наступающим! 🥂
От нас Вам самые добрые пожелания: успехов в профессиональной и личной сфере, новых горизонтов и внутренней гармонии!
Как мы работаем на праздниках:
1 - 3 января у нас выходной. Затем мы проверяем работы и отвечаем в режиме выходных и праздничных дней, то есть два раза в день (утром и вечером).
Спасибо Вам:
Помните, год назад, также, под новый год, я загадал, что к следующему новому году получится набрать 1.000 подписчиков на канале! Благодаря Вам отчасти это получилось! Сейчас нас 700! Конечно, до 1.000 далеко, но ведь за год пришло 500 и это не мало!
На этот раз не буду загадывать:)
Буду стараться, как и сейчас, публиковать интересные задачи с реальной практики и с собеседований по SQL! Спасибо, что присылаете нам примеры и разрешаете их публиковать! Благодаря Вам, все могут попробовать свои силы! И спасибо за активное участие в опросах!
С наступающим! 🥂
🎉16🔥3🎄1
С наступившим Новым годом, друзья!
И вот первая SQL задача этого года!
В таблице CLIENTS пять строк. В первых двух строках в поле CLIENT_TYPE значение 1, ещё в двух строках в CLIENT_TYPE значение 2 и в последней строке поле CLIENT_TYPE не заполнено, то есть в последней строке в поле CLIENT_TYPE значение NULL.
И вот первая SQL задача этого года!
В таблице CLIENTS пять строк. В первых двух строках в поле CLIENT_TYPE значение 1, ещё в двух строках в CLIENT_TYPE значение 2 и в последней строке поле CLIENT_TYPE не заполнено, то есть в последней строке в поле CLIENT_TYPE значение NULL.
Какое значение вернёт следующий запрос:
SELECT COUNT(DISTINCT CLIENT_TYPE) FROM CLIENTS
SELECT COUNT(DISTINCT CLIENT_TYPE) FROM CLIENTS
Anonymous Quiz
5%
1
40%
2
28%
3
5%
4
6%
5
8%
NULL
8%
Запрос "взорвётся" на ошибке, как фейерверк на новый год
👍2
Всем отличного начала нового года! Предлагаю решить похожую на предыдущую SQL-задачу, но в этот раз будет посложнее!
В таблице CLIENTS пять строк. В первых двух строках в поле CLIENT_TYPE значение 1, ещё в двух строках в CLIENT_TYPE значение 2 и в последней строке поле CLIENT_TYPE не заполнено, то есть в последней строке в поле CLIENT_TYPE значение NULL.
Есть два запроса:
1)
SELECT * FROM CLIENTS WHERE CLIENT_TYPE IN (1)
2)
SELECT * FROM CLIENTS WHERE CLIENT_TYPE NOT IN (2, NULL)
В таблице CLIENTS пять строк. В первых двух строках в поле CLIENT_TYPE значение 1, ещё в двух строках в CLIENT_TYPE значение 2 и в последней строке поле CLIENT_TYPE не заполнено, то есть в последней строке в поле CLIENT_TYPE значение NULL.
Есть два запроса:
1)
SELECT * FROM CLIENTS WHERE CLIENT_TYPE IN (1)
2)
SELECT * FROM CLIENTS WHERE CLIENT_TYPE NOT IN (2, NULL)
👍1
Результирующие наборы данных, полученные в результате выполнения этих запросов:
Anonymous Quiz
44%
Будут одинаковыми
56%
Будут разными
Всем доброго дня! 🙂
Подготовил объяснение правильного ответа к предыдущей задаче:
https://dzen.ru/a/ZZimesVaIihVjzf4
Подготовил объяснение правильного ответа к предыдущей задаче:
https://dzen.ru/a/ZZimesVaIihVjzf4
Дзен | Статьи
SQL задача про IN и NOT IN с объяснением
Статья автора «Илья Хохлов» в Дзене ✍: Всем отличного начала нового года! Вчера утром в своём Телеграм-канале опубликовал интересную задачу по SQL с собеседования про IN и NOT IN.
👍8
Всем отличного начала рабочей и учебной недели!
Мини-задачка по SQL. В таблице TEMP_TABLE один столбец и пять строк. Запрос SELECT 1 FROM TEMP_TABLE
Мини-задачка по SQL. В таблице TEMP_TABLE один столбец и пять строк. Запрос SELECT 1 FROM TEMP_TABLE
Anonymous Quiz
28%
выведет данные из первого столбца для всех строк
14%
выведет просто цифру 1 (один раз)
40%
выведет пять строк, в каждой из которых будет цифра 1
17%
выдаст ошибку при запуске
Всем доброй пятницы!
Спасибо за активное участие в решении SQL-задач 😉
Запрос из предыдущей задачи выводит данные из таблицы TEMP_TABLE (так как SELECT..FROM TEMP_TABLE), поэтому будут выводиться строки из неё (все сколько есть). Но в блоке SELECT не указан ни один из (настоящих) столбцов таблицы. Не выбираются данные из какого-либо столбца.
В нашем примере указано что пока выводятся строки из таблицы TEMP_TABLE нужно выводить цифру 1, а не показывать данные какого-либо столбца.
Подробнее про псевдостолбцы: https://dzen.ru/a/Yo5F9Zm2iQ3edGxQ
Спасибо за активное участие в решении SQL-задач 😉
Запрос из предыдущей задачи выводит данные из таблицы TEMP_TABLE (так как SELECT..FROM TEMP_TABLE), поэтому будут выводиться строки из неё (все сколько есть). Но в блоке SELECT не указан ни один из (настоящих) столбцов таблицы. Не выбираются данные из какого-либо столбца.
В нашем примере указано что пока выводятся строки из таблицы TEMP_TABLE нужно выводить цифру 1, а не показывать данные какого-либо столбца.
Подробнее про псевдостолбцы: https://dzen.ru/a/Yo5F9Zm2iQ3edGxQ
Дзен | Статьи
Псевдостолбцы
Статья автора «Илья Хохлов» в Дзене ✍: Здравствуй, уважаемый читатель!
👍6
Доброе утро, друзья!
Дана следующая таблица TEST_TABLE с тремя строками:
SELECT * FROM TEST_TABLE
ID NAME
1 NULL
2 NULL
3 NULL
Дана следующая таблица TEST_TABLE с тремя строками:
SELECT * FROM TEST_TABLE
ID NAME
1 NULL
2 NULL
3 NULL
👍1
Каков будет результат следующего запроса: SELECT SUM(1) FROM TEST_TABLE
Anonymous Quiz
24%
Null
22%
1
1%
2
28%
3
0%
4
0%
5
7%
6
18%
Будет ошибка выполнения SQL-запроса
2024 уверенно начался! 🎉
Начнём год с отличных предложений!
Весь мощный курс по SQL и базам данных с нашей поддержкой и практикой в реальной базе данных можно купить по цене 5.900:
https://prime-soft.biz/pay/45
Большой практический курс программирования в PL/SQL (ORACLE), в котором мы будем много заниматься разработкой базы данных, будем автоматизировать бизнес задачи на примере банковской области всего за 11.900:
https://prime-soft.biz/pay/94
Оплату курса программирования в PL/SQL (ORACLE) можно разделить на два этапа (в начале обучения 5.990 и после 11го урока 5.990). Внести предоплату и начать обучение можно здесь:
https://prime-soft.biz/pay/194
Начать обучение на любом курсе мы можем сразу после оплаты! Обучение построено на заранее подготовленных видео уроках. После просмотра каждого урока нужно заходить в тестовую (учебную) базу данных, которую мы для Вас подготовим, и выполнять практическую часть! Благодаря подготовленным видеоурокам обучаться можно в любое время и ещё это позволило нам снизить стоимость обучения! 😌👌
Мы проверяем каждое решение, помогаем его оптимизировать и искать ошибки. Как только всё будет выполнено отлично, переходим к следующему уроку. И так - урок за уроком!
Желательно проходить минимум один-два урока в неделю, чтобы сохранить постоянное погружение в тему!
Буду рад ответить на дополнительные вопросы!
Начнём год с отличных предложений!
Весь мощный курс по SQL и базам данных с нашей поддержкой и практикой в реальной базе данных можно купить по цене 5.900:
https://prime-soft.biz/pay/45
Большой практический курс программирования в PL/SQL (ORACLE), в котором мы будем много заниматься разработкой базы данных, будем автоматизировать бизнес задачи на примере банковской области всего за 11.900:
https://prime-soft.biz/pay/94
Оплату курса программирования в PL/SQL (ORACLE) можно разделить на два этапа (в начале обучения 5.990 и после 11го урока 5.990). Внести предоплату и начать обучение можно здесь:
https://prime-soft.biz/pay/194
Начать обучение на любом курсе мы можем сразу после оплаты! Обучение построено на заранее подготовленных видео уроках. После просмотра каждого урока нужно заходить в тестовую (учебную) базу данных, которую мы для Вас подготовим, и выполнять практическую часть! Благодаря подготовленным видеоурокам обучаться можно в любое время и ещё это позволило нам снизить стоимость обучения! 😌👌
Мы проверяем каждое решение, помогаем его оптимизировать и искать ошибки. Как только всё будет выполнено отлично, переходим к следующему уроку. И так - урок за уроком!
Желательно проходить минимум один-два урока в неделю, чтобы сохранить постоянное погружение в тему!
Буду рад ответить на дополнительные вопросы!
👍6
Ещё одна интересная SQL-задача
Напишите SQL-команду, которая вывела бы текст 'ДАННЫЕ' (или любой другой текст) вертикально. То есть каждую букву необходимо вывести в отдельной строке.
Решение, как всегда, напишу позже 😌
Напишите SQL-команду, которая вывела бы текст 'ДАННЫЕ' (или любой другой текст) вертикально. То есть каждую букву необходимо вывести в отдельной строке.
Решение, как всегда, напишу позже 😌
Здравствуйте, друзья!
Записал видео решение SQL-задачи в которой нужно было вывести текст по вертикали:
https://youtu.be/wrmFeFB8JJI
Записал видео решение SQL-задачи в которой нужно было вывести текст по вертикали:
https://youtu.be/wrmFeFB8JJI
YouTube
Задача по SQL. Вывести текст по вертикали
Вывод текста построчно. Использование рекурсии. CONNECT BY
Телеграм-канал: https://t.me/sql_oracle_databases
Телеграм-канал: https://t.me/sql_oracle_databases
👍12