Пишем на SQL
1.93K subscribers
43 photos
7 videos
12 files
117 links
Уроки по SQL. Изучаем базы данных на примере СУБД ORACLE, MySQL, MS SQL Server, PostgreSql

Мой курс по SQL и базам данных:
https://prime-soft.biz/courses/sql

Связь со мной @iliahohlov
Download Telegram
Друзья, всех с наступившим новым 2023 годом! 🎄
А также с наступающим рождеством! 🎉
Здоровья, счастья, благополучия! Всестороннего развития и успехов в Ваших начинаниях и в пути, по которому Вы уже идёте!
Терпение и труд, благие намерения и вера обязательно дадут хороший результат!
🍾13👍1
Всех с наступившим новым годом! 🎄

Наверняка у каждого из нас есть мечты и планы что бы мы хотели получить в этом году: освоить, наконец SQL, начать понимать подзапросы или получить более высокооплачиваемую должность!

И у меня есть планы на этот год, что я бы хотел сделать!
Я с удовольствием продолжу вести канал по SQL и сниму новые обучающие видео! За прошлый год канал в Телеграмме набрал более 200 подписчиков! Это же не мало! Думаю, что в течение 2023 года нас и тысяча будет! Почему нет:)

И конечно постараемся в начале 2023 года не только выпустить новые версии наших программных продуктов, но и сделать новое полезное ПО.

В этом году уже успел посмотреть интернет ресурсы на тему типичных вопросов на собеседованиях и нашёл интересные примеры. Вот сегодня предлагаю рассмотреть один из простых вопросов: чем NULL отличается от 0?
NULL - это отсутствие данных, а 0 - это информация!!! Например, в базе данных может быть таблица, в которую каждый день сохраняют температуру, проводят метеорологические исследования. И за определённый день можно сохранить в столбец "Градусов по C°" число 0. То есть в этот день было ноль градусов. А если за этот день в столбец с температурным показателем ничего не сохранить, то информации о температуре не будет - будет NULL. NULL - это отсутствие данных. NULL ещё называют неопределённостью, так как не известно какая была температура в тот день, ведь мы её не сохранили.

Всем хорошего старта в новом году!
👍21
Здравствуйте, друзья!

Продолжаем разбирать вопросы к собеседованиям по SQL. Какой из этих знаков не является подстановочным для оператора LIKE?
Anonymous Quiz
56%
*
10%
%
34%
_
1👏1
🤣19
Немного IT юмора. Взято в Интернете
🤣12😁4
😁6👍3
Всем хорошего понедельника!

Предлагаю начать неделю с очередной задачки по SQL. Я нашёл её на просторах интернета.
Дана таблица CARS, где, среди прочих, есть столбец COLOR, имеющий значения:
blue
red
null
blue
Каким будет результат следующего запроса:

SELECT COUNT (DISTINCT COLOR) FROM CARS
Anonymous Quiz
13%
red blue null
47%
3
3%
2 1 1
37%
2
👍7💩1
Всем привет! Немного айти юмора🙂
😁9
Всем хорошего понедельника!

Помните, почему РЕЛЯЦИОННЫЕ базы данных называются так? 🙂

В таких базах между таблицами существуют связи-отношения (один-к-одному, один-ко-многим, многие-ко-многоим). "Отношение" с английского языка переводится как "relation". Поэтому такие базы данных и называются реляционными.

И ещё напомню как достигаются связи между таблицами?
Связи между таблицами создаются с помощью ключей: первичных (primary key) и внешних (foreign key)!
👍9🔥2
Всем привет! Пока все не до конца ушли на выходные, предлагаю картиночку про нелёгкий труд it-поддержки!
😁12
Пишем на SQL pinned «КАК ПРОХОДИТ ОБУЧЕНИЕ НА НАШЕМ КУРСЕ SQL Весь курс состоит из 27 записанных видео уроков. Каждый урок длится примерно 1 час времени. Всем ученикам на нашем сервере создаём индивидуальную базу данных с данными, необходимыми для выполнения практических задач…»
Всем хороших выходных! 🙂
👍6
Здравствуйте, друзья!
Всем хорошего начала рабочей и учебной недели!
Нашёл ещё одну интересную задачу по SQL.
Все ли строки из таблицы VOUCHERS будут отобраны следующим запросом?
SELECT * FROM VOUCHERS WHERE ID_CODE = 1
UNION SELECT * FROM VOUCHERS WHERE ID_CODE <> 1
Anonymous Quiz
48%
Да
52%
Нет
1👍1
😁5
😁8
Всем доброго понедельника!

Приходилось уже искать дубли в таблице?

Работая с некоторой таблицей, иногда может понадобиться найти строки, у которых будет одинаковое значение в каком-нибудь столбце (или комбинации столбцов). Например, нужно проверить, есть ли в таблице CLIENTS строки, у которых было бы одинаковое значение в столбце EXT_CODE (ext - сокращение от английского external, то есть "внешний").
Можно легко найти дубли среди клиентов по внешнему коду если мы по этому столбцу сгруппируем ("схлопнем") все строки таблицы и при этом воспользуемся HAVING-ом, чтобы после группировки ("схлопывания") отобразить в результате только записи, куда сгруппировалось ("схлопнулось") более одной строки.

Решение:

SELECT EXT_CODE,
               COUNT(*)
   FROM CLIENTS
GROUP BY EXT_CODE
HAVING COUNT(*) > 1

Как видишь, WHERE не используется, а значит будут сначала отобраны все строки из таблицы клиентов. Затем они будут сгруппированы по EXT_CODE и после группировки мы получим внешние коды клиентов, по которым есть более одного клиента на один внешний код.

Позже планирую усложнить пример и дополнить статью.

Спасибо за внимание и, ещё раз, хорошего дня!
👍17