Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Погрузись в захватывающий фэнтезийный мир! Создай уникального мага и вступай в эпичные тактические сражения. Оттачивай навыки в динамичных онлайн-битвах . Всё это ждёт тебя в «Битве магов»!

Битва Магов

Хардкорные, Мидкорные, Ролевые

Играть

Топ прошлой недели

  • cristall75 cristall75 6 постов
  • 1506DyDyKa 1506DyDyKa 2 поста
  • Animalrescueed Animalrescueed 35 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
15
Slava.Rozhnev
Slava.Rozhnev
Серия SQLize.online

SQL-кодеры, приготовиться! Онлайн-песочница sqlize.online получила большие обновления (и свежую Oracle 26ai)⁠⁠

1 месяц назад

Привет, Пикабу! На связи Слава Рожнев, который все ещё делает sqlize.online — ту самую удобную онлайн-песочницу, где можно быстро проверить SQL-запрос, не устанавливая тяжеловесные СУБД.

Я тут немного поколдовали над кодом и выкатил пару жирных обновлений, которые сильно упростят жизнь всем, кто работает с базами данных или только учится.

💾 Больше не нужно копировать в блокнот: Сохраняем код!

Раньше было как? Написал ты, например, сложный CUBE или крутую оконную функцию, чтобы решить задачу, получил результат, закрыл вкладку — и всё, код улетел в Лету.

Теперь это в прошлом! Я добавил регистрацию на платформе. и возможность для всех зарегистрированных пользователей сохранять свои примеры кода!

Это прямо must-have, если вы:

* Решаете задачки и хотите вернуться к ним позже.

* Собираете личные «шпаргалки» для работы с разными диалектами SQL.

* Просто не хотите потерять гениальный запрос, который родился в 3 часа ночи.

Теперь ваши наработки хранятся в личном кабинете. Пользуйтесь на здоровье!

🚀 Oracle 26ai: Выходим на новый уровень

А вот это вишенка на торте для фанатов энтерпрайзных баз данных: мы обновили версию Oracle до самой последней — 26ai!

Да-да, с прицелом на искусственный интеллект. Теперь вы можете тестировать свои запросы на самой свежей и навороченной версии, которая включает массу новых фич, улучшенную производительность и, конечно, все те возможности, которые Oracle предлагает в области работы с ИИ и аналитикой.

Что это значит для вас:

* Вы работаете с самым актуальным инструментарием.

* Можно заранее проверить, как будут работать ваши запросы в самой современной продакшн-среде.

* Прощайте, устаревшие синтаксические конструкции, привет, новые возможности!

Итого:

* Регистрация: Готово!

* Сохранение кода: Готово!

* Oracle 26ai: Готово!

Заходите, регистрируйтесь, сохраняйте свои мега-запросы и ломайте нашу новую Oracle 26ai (в пределах разумного, конечно). Жду ваших багрепортов и предложений в комментариях.

Всем удачи в кодинге и да пребудет с вами долгожданный QUALIFY!

Наш девиз: «Надо тестить? Заходи, инсталляция не нужна!»

Показать полностью
[моё] Программирование IT Обучение SQL Oracle База данных Песочница Текст
3
11
IliaHohlov
IliaHohlov
Лига программистов

Собеседование по SQL: 4 способа подсчитать количество определённой буквы в слове⁠⁠

2 месяца назад

Нужно решить задачу на собеседовании разными способами: посчитать сколько раз встречается определённая буква в слове или фразе.

Способ 1: Узнать на сколько символов уменьшится длина слова, если функцией REPLACE удалить все вхождения этой буквы из него:

Это и другие решения будут на примере СУБД ORACLE. На самом деле способов решения подобных задач куда больше, но пока ограничимся четырьмя.

Способ 2: Представить слово как таблицу из одного столбца из его букв, и функцией COUNT подсчитать количество нужной буквы. Вначале напишем запрос, который делал бы таблицу из букв слова:

Теперь напишем SELECT из этой полученной таблицы. Подсчитаем сколько строчек с нужной буквой:

Способ 3: Развернуть слово из строки в столбец по аналогии с предыдущим решением, и с помощью PIVOT подсчитать количество строк с нужной буквой:

Можно даже подсчитать количество вхождений каждой буквы из которых состоит слово или фраза:

Способ 4: Использовать регулярные выражения:

Последний способ оказался совсем простой, да? На практике я стараюсь не пользоваться регулярными выражениями, так как производительность такого кода значительно ниже, особенно на больших объёмах данных.

Изучение чужого кода позволяет открывать новые возможности языка. Помогает узнавать новые функции и способы их применения.

Буду рад лайку, если понравилась статья! И заходи на мой Телеграм канал. Сюда регулярно выкладываю новые задачи с собеседований по SQL и решаем реальные практические задачи!

Показать полностью 6
Программирование IT Тестирование Собеседование SQL Oracle Программист Telegram (ссылка) Длиннопост
1
IliaHohlov
IliaHohlov
Лига программистов

SQL-задача про UNION⁠⁠

4 месяца назад
SQL-задача про UNION

Всем привет! Ещё один интересный вопрос с нашего Телеграм-канала про SQL и базы данных. Спасибо, что делитесь вопросами с собеседований!

Показать полностью 1
[моё] IT Программирование Тестирование Собеседование Postgresql SQL Фриланс Oracle Mysql Telegram (ссылка)
17
0
IliaHohlov
IliaHohlov

Задача на оптимизацию SQL запроса⁠⁠

7 месяцев назад

Предлагаю ещё одну задачу по базам данных со своего Телеграм-канала по SQL и базам данных. Итак, среди прочих, имеется таблица выставленных счетов INVOICES:

В некотором отчёте АБС количество счетов, выставленных за текущий день формируется SQL запросом:

SELECT COUNT(*) COUNT_INV FROM INVOICES WHERE DATE(DATE_CREATE) = CURRENT_DATE

Тестирование IT Программирование Собеседование SQL База данных Аналитик Аналитика Программист Postgresql Postgres Oracle Mysql Telegram (ссылка)
3
IliaHohlov
IliaHohlov
Лига программистов

Задача по SQL, которую могут решить немногие⁠⁠

8 месяцев назад

Всем привет! Предлагаю ещё одну интересную задачу со своего Телеграм-канала по SQL. На текущий день, у меня 1.8 К подписчиков и я получил лишь несколько решений этой задачи! Попробуй свои силы!

Даны две таблицы ORDERS (заказы) и ORDER_ITEMS (позиции заказов).

Таблица ORDERS, имеет следующую структуру:

Таблица ORDER_ITEMS имеет структуру:

Каждый заказ может иметь несколько позиций заказа (несколько строк в таблице ORDER_ITEMS). Столбец ID_PRODUCT указывает на товар позиции заказа, а в столбце AMOUNT хранится его количество (сколько штук товара взято в позицию заказа). Задача: написать запрос, выводящий номера и даты заказов, где все позиции заказа имеют количество (значение в столбце AMOUNT) равным одному.

Показать полностью 1
[моё] Собеседование Тестирование Программирование IT Маркетплейс SQL База данных Postgresql Mysql Удаленная работа Фриланс Oracle
49
23
IliaHohlov
IliaHohlov
Лига программистов

3 возможности PostgreSql, которые удивили меня больше всего!⁠⁠

10 месяцев назад

1. Есть DISTINCT ON

В PostgreSQL оператор DISTINCT можно использовать не только после слова SELECT для вывода уникальных строк всего набора данных, и не только внутри агрегатных функций, но ещё и для вывода лишь одной строки из нескольких, которые имеют одинаковое значение в указанном столбце (столбцах). В этом случае, с помощью ORDER BY можно определить какую именно из выводящихся строк с одинаковым значением в указанном столбце или столбцах, нужно вывести.

В отличие от обычного DISTINCT, который убирает дубликаты по всем полям в SELECT, DISTINCT ON (<столбец или набор столбцов>) выбирает первую строку для каждой группы значений в указанном в скобочках столбце (или наборе столбцов).

Так можно вывести последний заказ каждого пользователя:

SELECT DISTINCT ON (user_id) user_id, order_id, order_date, amount FROM orders ORDER BY user_id, order_date DESC;

2. Можно выводить строки без столбцов

Это ещё одна особенность PostgreSQL. Запросы SELECT, в которых не указаны ни поля после слова SELECT, ни звёздочка, прекрасно выполняются. Пример на PostgreSql версии 16.5:

И даже chatgpt об этом (пока ещё) не знает.

3. С помощью GENERATE_SERIES можно на лету генерировать динамические таблицы чисел, дат, дней недели и другую информацию

Вывести дни недели можно следующим способом:

А так, например, можно вывести все числа января и февраля:

Продолжая предыдущий пример, можно добавить вывод количеств посещений сайта prime-soft.biz в выводимые даты:

Напиши под постом что удивило в PostgreSql именно тебя. Буду очень рад, если поделишься опытом! И, конечно, буду рад, твоему лайку моей статье! А ещё у меня есть Телеграм канал, в котором регулярно решаем задачи по SQL с собеседований и реальной практики!

Показать полностью 5
[моё] Программирование IT Собеседование Программист SQL Postgresql Oracle Тестирование Длиннопост
6
4
IliaHohlov
IliaHohlov
Лига программистов

Задача по SQL на этот понедельник⁠⁠

10 месяцев назад

Всем доброго понедельника!

Как насчёт очередной небольшой задачи по SQL с нашего Телеграм-канала?

В базе данных (на примере СУБД ORACLE), среди прочих, есть три таблицы, определённые следующим образом:

/* Таблица Сотрудники */

CREATE TABLE PERS (

ID NUMBER PRIMARY KEY,

FIO VARCHAR(100) NOT NULL,

PHONE VARCHAR(10) DEFAULT '' NOT NULL);

/* Автомобили сотрудников */

CREATE TABLE CARS (

ID NUMBER PRIMARY KEY,

BRAND VARCHAR(50) NOT NULL,

MODEL VARCHAR(50) NOT NULL,

ID_PERS_OWNER NUMBER NOT NULL,

CONSTRAINT FK_CAR_OWNER FOREIGN KEY

(ID_PERS_OWNER) REFERENCES PERS(ID)

);

/* Сотрудники-водители */

CREATE TABLE DRIVERS (

ID_PERS NUMBER PRIMARY KEY,

DRIVE_LICENSE_NUM VARCHAR(20) DEFAULT NULL,

CONSTRAINT FK_PERS_DRIVER FOREIGN KEY

(ID_PERS) REFERENCES PERS(ID)

);

В таблице PERS данные:

ID FIO PHONE

1 Иванов И.И. 9057553111

2 Петров П.П. 9104454545

3 Сидоров А.И. 9113457778

В таблице CARS данные:

ID BRAD MODEL ID_PERS_OWNER

1 Ауди А4 1

2 Фиат Панда 2

3 Форд Мондео 2

Какой результат вернёт выполнение следующего SQL-скрипта, состоящего из трёх команд?

TRUNCATE TABLE DRIVERS;

INSERT INTO DRIVERS

(ID_PERS)

SELECT p.ID

FROM PERS p

JOIN CARS c

On c.ID_PERS_OWNER = p.ID;

SELECT COUNT(*)

FROM DRIVERS;

Задача по SQL на этот понедельник
Показать полностью 1
[моё] Программирование IT Собеседование SQL База данных Mysql Oracle Postgresql Тестирование Программист
4
6
IliaHohlov
IliaHohlov
Лига программистов

SQL задача по оконным функциям⁠⁠

1 год назад

Всем привет!

Как начёт ещё одной задачи по SQL задачу с нашего Телеграм-канала?

В таблице SALES_TOTAL хранятся итоги по продажам каждого товара за каждый день. Запрос

SELECT t.*

FROM SALES_TOTAL t

WHERE t.PRODUCT_ID = 8

AND t.SALE_DATE >= '2024-01-01'

ORDER BY t.SALE_DATE

возвращает данные по продажам некоторого товара с идентификатором 8 за каждый день, начиная с начала 2024 года:

PRODUCT_ID SALE_DATE AMOUNT

8 2024-01-01 5

8 2024-01-02 4

8 2024-01-03 7

8 2024-01-04 8

...

В столбце AMOUNT отображается количество штук проданного товара за каждый день.

Чтобы в результирующей таблице, помимо существующих столбцов, получить ещё один столбец с количеством проданного товара с начала года по день, указанный в таблице накопительным итогом, нужно в блок SELECT через запятую добавить:

SQL задача по оконным функциям
Показать полностью 1
[моё] Программирование Собеседование IT SQL Урок Задача Postgresql Mysql Oracle Программист Тестирование
7
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии