uk
Feedback
Пишем на SQL

Пишем на SQL

Відкрити в Telegram

Уроки по SQL. Изучаем базы данных на примере СУБД ORACLE, MySQL, MS SQL Server, PostgreSql Мой курс по SQL и базам данных: https://prime-soft.biz/courses/sql Связь со мной @iliahohlov

Показати більше
1 900
Підписники
-124 години
+17 днів
-130 день
Архів дописів
Сегодня нашёл интересный тест на тему соединений. В чем разница между LEFT JOIN и RIGHT JOIN, если соединяемые таблицы в запросе поменять местами?
Anonymous voting

Курс Программирование в PL/SQL (ORACLE) доступен теперь и на Степике: https://stepik.org/a/250244

Специально для тех, кто не может решиться! Скидки на обучение SQL и обучение программированию в PL/SQL (ORACLE)! 🎁 Весь курс SQL и базам данных за 8.900 программа обучения записаться и оплатить Весь курс Программирования в PL/SQL (ORACLE) за 14.500 программа обучения записаться и оплатить Курс SQL + Программирование в PL/SQL (ORACLE) за 16.900 записаться и оплатить Всё обучение индивидуальное! Начать можем сразу после оплаты! Время на обучение не ограниченно (но желательно проходить не менее 1-2 урока в неделю). Буду рад дополнительным вопросам на почту info@prime-soft.biz или под постом.

Спасибо всем за участие! Ниже перечень слов, из которых составлен филворд: База Выборка Да Запись Запрос Зависимость И Или Ключ Код Команда Кортеж Минус Не Объединение Один Множество Нет Поле Связь Столбец СУБД Таблица

Всем доброго понедельника! Как насчет филворда на тему баз данных на русском?! Сложность не высокая. Всего спрятано 23 слова. Решение опубликую чуть позже.

Сколько строчек вернёт запрос: SELECT * FROM CLIENTS WHERE INN IN (SELECT INN FROM REG_INN)
Anonymous voting

Всем привет! Предлагаю очередную мини-задачу по SQL: В таблице CLIENTS три строки: ID     NAME                        INN ------------------------------------------------- 1      ИП Иванов И.И.      690501019999 2      АО Рога и копыта  1234567890 3      АО ПАКС                   2345678901 В таблице REG_INN  две строки: INN -------------------- 1234567890 NULL

Всем привет! Интересная задача от Александра (для тех, кто не читает комментарии 🙂). Сколько строк вернёт следующий запрос (на примере PostgreSql): select 123 union all select 123 union select 123
Anonymous voting

В БД PostgreSQL в таблице CODES (CODE VARCHAR(10)) нет строк. Сколько строк вставит команда: INSERT INTO CODES (CODE) SELECT 123 UNION SELECT 123
Anonymous voting

Что произойдёт при выполнении SQL команды?
Anonymous voting

Что произойдёт при выполнении следующей команды? INSERT INTO CLIENTS (NAME, INN) VALUES ('АО Зелёный дом', NULL)

Всем привет! Решая практические задачи и даже проходя небольшие тесты по SQL, мы становимся умнее: освежаем в памяти возможности языка SQL, узнаём и закрепляем новые знания! Поэтому, не ленимся и принимаем участие!😉 Предлагаю очередной интересный вопрос по базам данных. В базе данных, среди прочих, есть таблица клиентов CLIENTS, определённая так: CREATE TABLE CLIENTS ( ID INTEGER GENERATED ALWAYS AS IDENTITY PRIMARY KEY, NAME VARCHAR(100) NOT NULL, INN VARCHAR(20)); CREATE UNIQUE INDEX CLIENTS_INN ON CLIENTS (INN); В таблице CLIENTS две строки: ID NAME INN 1 АО Волга 12345 2 ИП Пятаков NULL

Интересно было бы узнать сколько сейчас работает удалённо. Вы работаете в офисе или из дома?
Anonymous voting

Здравствуйте, друзья! На следующей неделе планирую новую группу по SQL и PostgreSql, и в этот раз обучение будет по будням! 👌 - Он-лайн обучение по вторникам и четвергам 19:30 - 21:00; - Закрытая Телеграм группа куда я буду выкладывать записи наших он-лайн встреч (на случай, если пропустите или захотите повторить материал); - Будут самостоятельные практические задачи на тренеровочной базе данных. Я буду проверять Ваши решения, помогать оптимизировать их и находить ошибки! Посмотреть программу обучения и записаться можно тут: https://prime-soft.biz/courses/postgresql Оплатить можно в два этапа. Вначале 50% (7.450 ₽) и столько же после пятого урока. Всего будет 10 онлайн встреч. График обучения: - вт, чт 19:30 - 21:00; - 08.07.2025 - 07.08.2025! Оставляйте вопросы прямо под постом или отправляйте на почту: info@prime-soft.biz

Спасибо всем за активное участие! Очень рад Вашим решениям! Для того, чтобы отобразить месяца 2024 года, в которых заведено более 10ти клиентов, для начала просто отберём клиентов, заведённых именно в 2024 году: SELECT * FROM CLIENTS WHERE DATE_CREATE >= DATE '2024-01-01' AND DATE_CREATE < DATE '2025-01-01' Было бы неплохо, если бы на столбце DATE_CREATE был индекс. Мы получили всех клиентов, которых завели в 2024ом году. Выводя клиентов, выведем и ещё один столбец, в который будем извлекать номер месяца из даты заведения клиента (для того, чтобы позже клиентов группировать по одинаковому номеру месяца). Новому столбцу дадим алиас "MM". Наш запрос получит вид: SELECT CLIENTS. *, EXTRACT(MONTH FROM DATE_CREATE) MM FROM CLIENTS WHERE DATE_CREATE >= DATE '2024-01-01' AND DATE_CREATE < DATE '2025-01-01' В запросе выше мы вывели все имеющиеся столбцы из таблицы CLIENTS и добавили ещё один новый, в него мы получили месяц заведения клиента. У некоторых клиентов месяц заведения одинаковый, сгруппируем строки по одинаковом получаемому месяцу заведения клиента, подсчитав сколько в каждую группу сгруппировалось строк: SELECT EXTRACT(MONTH FROM DATE_CREATE) MM, COUNT(*) CLIENTS_COUNT FROM CLIENTS WHERE DATE_CREATE >= DATE '2024-01-01' AND DATE_CREATE < DATE '2025-01-01' GROUP BY EXTRACT(MONTH FROM DATE_CREATE) В результате получим таблицу вида: MM CLIENTS_COUNT 1 5 2 7 3 12 ... Сгруппировав клиентов 2024 года по месяцу заведения и подсчитав сколько клиентов заведено в каждом месяце, используя HAVING теперь оставим тех, где подсчитанное количество больше 10: SELECT EXTRACT(MONTH FROM DATE_CREATE) MM, COUNT(*) CLIENTS_COUNT FROM CLIENTS WHERE DATE_CREATE >= DATE '2024-01-01' AND DATE_CREATE < DATE '2025-01-01' GROUP BY EXTRACT(MONTH FROM DATE_CREATE) HAVING COUNT(*) > 10 Обратите внимание, что в HAVING-е недопустимо для большинства СУБД (да и по ANSI стандарту тоже) использовать алиас (новое имя) столбца, ведь столбец с данными ещё не создан. Но в HAVING-е можно использовать такой же расчёт количества, что и в SELECT-е. В итоге и получилось не: HAVING CLIENTS_COUNT > 10 а: HAVING COUNT(*) > 10 Осталось добавить упорядочивание месяцов по количеству заведенных в них клиентов. Месяца с наибольшим количеством заведённых клиентов должны отображаться сверху. А вот в сортировке можно использовать алиасы столбцов. Конечный вариант нашего запроса: SELECT EXTRACT(MONTH FROM DATE_CREATE) MM, COUNT(*) CLIENTS_COUNT FROM CLIENTS WHERE DATE_CREATE >= DATE '2024-01-01' AND DATE_CREATE < DATE '2025-01-01' GROUP BY EXTRACT(MONTH FROM DATE_CREATE) HAVING COUNT(*) > 10 ORDER BY CLIENTS_COUNT DESC

Всем отличного понедельника! Есть таблица клиентов CLIENTS: ID DATE_CREATE NAME 1 15.01.2024 ИП Иванов 2 27.01.2024 АО Вагон 3 04.02.2024 ИП Крупицкая ... 99 19.06.2025 АО Фонтанка Требуется написать SQL-запрос, выводящий месяца за 2024 год, в которые было заведено более 10 клиентов (DATE_CREATE = дата заведения). В отчёте отобразить номер или название месяца и количество заведённых клиентов. Результат отсортироваить по убыванию. Вначале отобразить месяца, в которых заведено больше всего клиентов. Задачу можно решить любым способом. Один из вариантов решения задачи опубликую чуть позже, сначала буду ждать работу от Вас 🤗

🧠 Как не потерять интерес к SQL (если учишь сам) Учить SQL — просто, но легко заскучать🙂. Вот как держать фокус: 1️⃣ Реальные данные — пиши запросы к таблицам с фильмами, заказами или играми. Учись на том, что интересно. 2️⃣ Своя база — попробуй сделать мини-ERP: товары, клиенты, заказы. И JOIN-ы сразу станут осмысленными. 3️⃣ Мини-задачи — решай 1 SQL-задачу в день: sqlbolt.com, LeetCode, Mode. 4️⃣ Связь с кодом — попробуй писать SQL-запросы в Go или Python. Реальный эффект = реальный интерес. 5️⃣ Маленькие шаги — 20 минут в день лучше попытки "проглотить всё за выходные". 🔥 SQL — это не только слово "SELECT", это умение говорить с базами данных. А базы — везде.

Сколько строк вернёт запрос SELECT * FROM CLIENTS WHERE DESCRIPTION <> NULL AND DESCRIPTION <> ''
Anonymous voting

В таблице CLIENTS есть три строки: ID NAME DESCRIPTION ----------------------------------------------------- 1 АО Волга NULL 2 ИП Иванов 3 ИП Петров Договор

Какой из этих запросов отобразит список товаров и их последнюю по дате стоимость?
Anonymous voting