В таблице docs четыре строки:
id doc_info
1 p-file
2 pt-file
3 pc-file
4 t-file
id doc_info
1 p-file
2 pt-file
3 pc-file
4 t-file
Что будет в результате выполнения запроса?
select count(1) from docs where doc_info like 'p%' and doc_info not like 'pt%'
select count(1) from docs where doc_info like 'p%' and doc_info not like 'pt%'
Anonymous Quiz
5%
0
15%
1
63%
2
8%
3
2%
4
8%
SQL-ошибка
Ilia Khokhlov 👨💻
Всем привет! Приглашаю на трёхдневный SQL тренинг-практику по анализу данных! 1. Научимся проводить анализ возможных результатов при соединении таблиц разными типами джоинов (решение классических задач собеседования, поиск минимального и максимального количества…
Всем привет!
Интенсив по SQL аналитике переносится на следующий год! Начнём 24 января. Занятия будут через Zoom по тому же графику (сб, вс 10:30 - 11:30)!
Интенсив по SQL аналитике переносится на следующий год! Начнём 24 января. Занятия будут через Zoom по тому же графику (сб, вс 10:30 - 11:30)!
👍4
Всем привет!
Нашёл интересную задачу по SQL в интернете.
Схема БД интернет-магазина содержит таблицы:
Company – производители телефонов
Phone – возможные для приобретения телефоны. Необходимо составить запрос поиска производителя телефона с наибольшей средней стоимостью телефона этого производителя.
Нашёл интересную задачу по SQL в интернете.
Схема БД интернет-магазина содержит таблицы:
Company – производители телефонов
Phone – возможные для приобретения телефоны. Необходимо составить запрос поиска производителя телефона с наибольшей средней стоимостью телефона этого производителя.
👍1
Как мы работаем в праздники:
С 5 января мы онлайн! Будем полностью поддерживать Вас в обучении: проверять решения самостоятельных работ и отвечать на любые вопросы!
С 5 января мы онлайн! Будем полностью поддерживать Вас в обучении: проверять решения самостоятельных работ и отвечать на любые вопросы!
👍5
Поздравляем всех с новым этапом в личной и профессиональной жизни!
С Новым годом и Рождеством! 🎉
Спасибо всем, кто обучается, обучался или начинает обучаться с нами! Постоянных, систематических успехов в освоении новых знаний и умений! 💪
Будем рады Вашим обращениям и после обучения! Обращайтесь за советами и вопросами 🤗
С Новым годом и Рождеством! 🎉
Спасибо всем, кто обучается, обучался или начинает обучаться с нами! Постоянных, систематических успехов в освоении новых знаний и умений! 💪
Будем рады Вашим обращениям и после обучения! Обращайтесь за советами и вопросами 🤗
🎄17
Всем привет! 👋
Поздравляем с началом нового рабочего (и учебного) года! Успехов и достижений! 💻
Знаете, что в базах данных, наряду с остальными типами объектов, могут быть ещё и синонимы (synonym)?
Синонимы — это альтернативные имена (псевдонимы) для объектов баз данных (таблиц, представлений, хранимок, пакетов, и т.д.). Это указатели на реальные объекты.
Например, можно создать короткое или удобное имя для объекта, который находится в другой схеме или даже в другой базе данных и обращаться к нему, как будто он лежит прямо в нашей схеме.
Самый главный плюс использования синонимов - это абстракция и независимость от изменений. Если реальная таблица переезжает в другую схему, нам нужно будет не переписывать все запросы, а всего лишь создать синоним с именем таблицы и в нем указать реальное расположение таблицы! 👌
Все SQL-запросы и команды к этой таблице продолжат работать без изменений. Здорово, правда? И это лишь одно из назначений синонимов! 💪
Поздравляем с началом нового рабочего (и учебного) года! Успехов и достижений! 💻
Знаете, что в базах данных, наряду с остальными типами объектов, могут быть ещё и синонимы (synonym)?
Синонимы — это альтернативные имена (псевдонимы) для объектов баз данных (таблиц, представлений, хранимок, пакетов, и т.д.). Это указатели на реальные объекты.
Например, можно создать короткое или удобное имя для объекта, который находится в другой схеме или даже в другой базе данных и обращаться к нему, как будто он лежит прямо в нашей схеме.
Самый главный плюс использования синонимов - это абстракция и независимость от изменений. Если реальная таблица переезжает в другую схему, нам нужно будет не переписывать все запросы, а всего лишь создать синоним с именем таблицы и в нем указать реальное расположение таблицы! 👌
Все SQL-запросы и команды к этой таблице продолжат работать без изменений. Здорово, правда? И это лишь одно из назначений синонимов! 💪
👍9
Сколько строк вернет запрос: SELECT * FROM DOCS WHERE '%' LIKE DOCNUM
Anonymous Quiz
57%
0
6%
1
35%
2
3%
3
🔥2🤔2
Всем привет!
Есть запрос, выводящий операции по некоторому счету за период:
Есть запрос, выводящий операции по некоторому счету за период:
SELECT t.DOCDATE, t.DOCNUM, t.AMOUNT
FROM V_SVERKA_2601 t
WHERE t.ACCDBT LIKE '51%'
ORDER BY t.DOCDATE ASC
UNION ALL
SELECT t.DOCDATE, t.DOCNUM, t.AMOUNT
FROM V_SVERKA_2601 t
WHERE t.ACCCRD LIKE '51%'
ORDER BY t.DOCDATE DESC
Запрос, указанный выше:
Anonymous Quiz
20%
выведет операции по t.DOCDATE в прямом порядке
20%
выведет операции по t.DOCDATE в обратном порядке
60%
вызовет SQL ошибку
Всем привет!
Встречались с блокировками во время прогрузки и установки пакетов? Когда пытаешься прогрузить новую версию пакета, а он постоянно кем то используется и заблокирован: то кто-то вызывает функцию пакета, то он залочен джобом (который тоже вызывает какую-то его процедуру).
Чтобы суметь таки прогрузить пакет на разработческой базе или тестовой (не на проде) можно запустить его компиляцию, далее с помощью сессий, узнать свой sid (например, это можно сделать в PL/SQL Developer-е в окне Tools -> Sessions), подставить его в этот скрипт в переменную v_mister_president_session и запустить его. Скрипт будет находить всех, кто блокирует Вашу сессию и будет убивать (kill) их. А ещё некоторое время будет проверять, не появился ли кто-то еще, кто хочет Вас заблокировать. Как только в течение некоторого времени больше не будет появляться сессий, которых необходимо отстреливать, скрипт сообщит о завершении работы! Разумеется, у пользователя, запускающего скрипт, должны быть права на снятие сессий.
#oracle #plsql #kill_sessions
Встречались с блокировками во время прогрузки и установки пакетов? Когда пытаешься прогрузить новую версию пакета, а он постоянно кем то используется и заблокирован: то кто-то вызывает функцию пакета, то он залочен джобом (который тоже вызывает какую-то его процедуру).
Чтобы суметь таки прогрузить пакет на разработческой базе или тестовой (не на проде) можно запустить его компиляцию, далее с помощью сессий, узнать свой sid (например, это можно сделать в PL/SQL Developer-е в окне Tools -> Sessions), подставить его в этот скрипт в переменную v_mister_president_session и запустить его. Скрипт будет находить всех, кто блокирует Вашу сессию и будет убивать (kill) их. А ещё некоторое время будет проверять, не появился ли кто-то еще, кто хочет Вас заблокировать. Как только в течение некоторого времени больше не будет появляться сессий, которых необходимо отстреливать, скрипт сообщит о завершении работы! Разумеется, у пользователя, запускающего скрипт, должны быть права на снятие сессий.
#oracle #plsql #kill_sessions
👍4❤2
Таблица CLIENTS имеет структуру:
CREATE TABLE CLIENTS (
ID INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(100) NOT NULL,
INN VARCHAR(12),
KPP VARCHAR(9),
DESCRIPTION VARCHAR(100)
);
Таблица INVOICES имеет структуру:
CREATE TABLE INVOICES (
ID INT PRIMARY KEY AUTO_INCREMENT,
DATE_INV DATE NOT NULL,
NOM_INV VARCHAR(20) NOT NULL,
AMOUNT DECIMAL(17, 2),
ID_CLIENT INT NOT NULL,
DESCRIPTION VARCHAR(100),
FOREIGN KEY (ID_CLIENT) REFERENCES CLIENTS(ID)
);
Есть два запроса:
a)
SELECT c.*
FROM CLIENTS c
LEFT JOIN INVOICES i
ON c.ID = i.ID_CLIENT
WHERE i.ID IS NULL
b)
SELECT *
FROM CLIENTS c
WHERE NOT EXISTS (SELECT *
FROM INVOICES i
WHERE i.ID_CLIENT = c.ID)
CREATE TABLE CLIENTS (
ID INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(100) NOT NULL,
INN VARCHAR(12),
KPP VARCHAR(9),
DESCRIPTION VARCHAR(100)
);
Таблица INVOICES имеет структуру:
CREATE TABLE INVOICES (
ID INT PRIMARY KEY AUTO_INCREMENT,
DATE_INV DATE NOT NULL,
NOM_INV VARCHAR(20) NOT NULL,
AMOUNT DECIMAL(17, 2),
ID_CLIENT INT NOT NULL,
DESCRIPTION VARCHAR(100),
FOREIGN KEY (ID_CLIENT) REFERENCES CLIENTS(ID)
);
Есть два запроса:
a)
SELECT c.*
FROM CLIENTS c
LEFT JOIN INVOICES i
ON c.ID = i.ID_CLIENT
WHERE i.ID IS NULL
b)
SELECT *
FROM CLIENTS c
WHERE NOT EXISTS (SELECT *
FROM INVOICES i
WHERE i.ID_CLIENT = c.ID)
❤2🤔1
ЧЕМ ОБУЧЕНИЕ В ФОРМАТЕ КУРСА ЛУЧШЕ САМОСТОЯТЕЛЬНОГО
Любым знаниям можно научиться как курсом/программой, так и самостоятельно.
👉 Самое главное отличие в способах получения - это время!
👉 В режиме курса Вас проведут и покажут все, что нужно, объяснят возможные проблемы и способы решения.
👉 В нужных местах Вы будете представлены один-на-один с нужными задачами.
👉 И постоянно у Вас будет поддержка, чтобы помочь направить мысли в нужную сторону.
👉 Во всех задачах разбираются индивидуально и выбранные методы решения задач, и оптимальные (и почему они наиболее оптимальные).
👉 При изучении SQL в режиме курса, его можно освоить менее, чем за месяц. В самостоятельном режиме - гораздо дольше и ещё откуда будешь знать, ко всему ли готов. Что нужно знать и уметь ещё.
У нас сегодня последний день специальной цены на изучение SQL и MS Excel!
Не откладывайте на "как-нибудь потом" своё настоящее и будущее!
Любым знаниям можно научиться как курсом/программой, так и самостоятельно.
👉 Самое главное отличие в способах получения - это время!
👉 В режиме курса Вас проведут и покажут все, что нужно, объяснят возможные проблемы и способы решения.
👉 В нужных местах Вы будете представлены один-на-один с нужными задачами.
👉 И постоянно у Вас будет поддержка, чтобы помочь направить мысли в нужную сторону.
👉 Во всех задачах разбираются индивидуально и выбранные методы решения задач, и оптимальные (и почему они наиболее оптимальные).
👉 При изучении SQL в режиме курса, его можно освоить менее, чем за месяц. В самостоятельном режиме - гораздо дольше и ещё откуда будешь знать, ко всему ли готов. Что нужно знать и уметь ещё.
У нас сегодня последний день специальной цены на изучение SQL и MS Excel!
Не откладывайте на "как-нибудь потом" своё настоящее и будущее!
👍4❤1
Для тех, кто думает о смене работы на работу из IT-сферы. Чем айти привлекателен!
Итак:
ПЛЮСЫ РАБОТЫ В IT
👉 Хорошая зарплата. В большинстве случаев сотрудникам айти специальностей хорошо платят!
👉 Гибкий график. Да, многие программисты, аналитики и тестировщики работают по удобному графику и это плюс!
👉 Возможность работать удалённо! Многие компании разрешают специалистам работать из дома. Удобно и экономит время и сотруднику, и деньги компании. В Германии за удалённый формат работы часто ещё и доплачивают, потому что сотрудник не расходует электричество компании. Мелочь, а получить раз в три месяца дополнительные 120 евро (11 тыс руб) на счет приятно.
👉 Возможность жить в другой стране с визой цифрового кочевника. Многие страны открывают возможность жить у себя, если Вы работаете в айти и зарабатываете не в этой стране. Главное, что Вы приносите стране деньги и даже часто не обязательно в ней платить налоги (если не заработали больше определённой суммы в год или не живёте в ней 183 или больше дней в году).
👉 Дополнительные социальные льготы для семей айти специалистов. Например, в России, начиная с 2022 года появилось льготное ипотечное кредитование для сотрудников it-компаний.
👉 Возможность развиваться и идти в ногу со временем! Вы знаете что и как работает изнутри.
Буду рад Вашим комментариям под постом. Какие плюсы Вы видите для себя в работы в айти.
Чуть позже напишу минусы :)
Итак:
ПЛЮСЫ РАБОТЫ В IT
👉 Хорошая зарплата. В большинстве случаев сотрудникам айти специальностей хорошо платят!
👉 Гибкий график. Да, многие программисты, аналитики и тестировщики работают по удобному графику и это плюс!
👉 Возможность работать удалённо! Многие компании разрешают специалистам работать из дома. Удобно и экономит время и сотруднику, и деньги компании. В Германии за удалённый формат работы часто ещё и доплачивают, потому что сотрудник не расходует электричество компании. Мелочь, а получить раз в три месяца дополнительные 120 евро (11 тыс руб) на счет приятно.
👉 Возможность жить в другой стране с визой цифрового кочевника. Многие страны открывают возможность жить у себя, если Вы работаете в айти и зарабатываете не в этой стране. Главное, что Вы приносите стране деньги и даже часто не обязательно в ней платить налоги (если не заработали больше определённой суммы в год или не живёте в ней 183 или больше дней в году).
👉 Дополнительные социальные льготы для семей айти специалистов. Например, в России, начиная с 2022 года появилось льготное ипотечное кредитование для сотрудников it-компаний.
👉 Возможность развиваться и идти в ногу со временем! Вы знаете что и как работает изнутри.
Буду рад Вашим комментариям под постом. Какие плюсы Вы видите для себя в работы в айти.
Чуть позже напишу минусы :)
👍4
В таблице CLIENTS следующие записи:
ID NAME INN
1 Ставрополь-отель 111
2 АО Проще простого 222
В таблице INVOICES следующие записи:
ID DATE_INV ID_CLIENT
1 20.01.2026 1
2 21.02.2026 1
Есть запрос:
SELECT c.ID,
c.NAME,
CASE
WHEN c.INN IS NOT NULL THEN
'Готовый'
WHEN EXISTS (select 1 from INVOICES where ID_CLIENT = c.ID) THEN
'Действующий'
END INFO
FROM CLIENTS c
ORDER BY c.ID
ID NAME INN
1 Ставрополь-отель 111
2 АО Проще простого 222
В таблице INVOICES следующие записи:
ID DATE_INV ID_CLIENT
1 20.01.2026 1
2 21.02.2026 1
Есть запрос:
SELECT c.ID,
c.NAME,
CASE
WHEN c.INN IS NOT NULL THEN
'Готовый'
WHEN EXISTS (select 1 from INVOICES where ID_CLIENT = c.ID) THEN
'Действующий'
END INFO
FROM CLIENTS c
ORDER BY c.ID
Что будет выведено в столбце INFO в первой строке результирующего набора данных указанным выше запросом?
Anonymous Quiz
8%
Null
66%
Готовый
22%
Действующий
5%
1
Есть два запроса:
1)
select fld1 from table1 except select fld1 from table2;
2)
select fld1 from table2 except select fld1 from table1;
1)
select fld1 from table1 except select fld1 from table2;
2)
select fld1 from table2 except select fld1 from table1;
👍2