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

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

Связь со мной @iliahohlov
Download Telegram
Всем доброго понедельника! Начнём рабочую неделю с небольшой задачки по SQL. В каком из примеров соединение написано с ошибкой (при выполнении команды получим SQL ошибку):
Anonymous Quiz
4%
SELECT * FROM TBL1 LEFT JOIN TBL2 ON TBL1.FLD1 = TBL2.FLD1
50%
SELECT * FROM TBL1 CROSS JOIN TBL2 ON TBL1.FLD1 = TBL2.FLD1
38%
SELECT * FROM TBL1, TBL2 WHERE TBL1.FLD1 = TBL2.FLD1
8%
SELECT * FROM TBL1 JOIN TBL2 ON TBL1.FLD1 = TBL2.FLD1
4👍3
Всем доброго понедельника и отличного начала рабочей (учебной) недели!

Кто знает что такое DQL? 😉
Все команды языка SQL разделяют на группы (категории)! То есть КАЖДАЯ команда относится к какой либо группе.
Зачем вообще разделять команды на группы? Во-первых потому, что одни команды работают непосредственно с данными, а с помощью других можно создавать объекты баз данных и управлять ими (например, можно создать таблицу: ведь прежде, чем данные куда-то класть или откуда-то выбирать, сначала необходимо создать саму таблицу).
Во-вторых, команды, относящиеся к разным группам (категориям), по разному влияют на транзакции. Вот основные группы (категории) команд:

DML (Data Manipulation Language) - команды манипуляции данными. Сюда относится команды SELECT (чтение данных из таблиц), INSERT (вставка новых строк в таблицу), UPDATE (редактирование данных), DELETE (удаление строк из таблицы) и еще MERGE (это одна команда, позволяющая добавлять данные в таблицу, а, при их наличии, обновлять их, то есть, по сути, команда делает INSERT или UPDATE).

DDL - команды определения данных, как раз с помощью них и создаются и управляются объекты базы данных.

DCL - команды управления доступом к данным.

TCL - команды управления транзакциями.

Подробнее обо всех командах я писал здесь: https://dzen.ru/a/YXMDQ6U6qwbtfLFI

И вот настал главный вопрос: что же такое DQL? DQL (Data Query Language) - это ещё одна группа (категория) команд языка SQL, а аббревиатура переводится дословно как "язык выборки данных". Точнее это, конечно, не язык, а команда выборки данных. Ведь эта группа (категория) включает в себя только одну команду - SELECT. Верно, эта команда есть и в группе DML, ведь чтение данных тоже можно назвать их манипуляцией. Интересно получается: некоторые специалисты решили команду SELECT отнести в свою собственную группу (категорию). Так что в одних справочника Вы встретите, что всего групп языка SQL четыре (DML, DDL, TCL и DCL), а в других источниках их пять - плюсом к ним ещё и группа DQL (куда перенесли команду SELECT и она единственная в этой группе). Может в этом и есть смысл, так как остальные оставшиеся в группе DML команды при их использовании открывают транзакцию, а SELECT - нет, за некоторыми исключениями, например, выборки информации в некоторой базе данных из другой базы данных, но это уже другая тема 🙂
👍14🔥1
Всем хорошей среды!
Очень интересно кто сейчас на какой СУБД преимущественно (или полностью) работает! Буду рад Вашему ответу!
Anonymous Poll
58%
ORACLE
11%
MS SQL Server
7%
MySQL
21%
PostgreSQL
0%
Firebird
0%
DB2
1%
MS Access
2%
Другая (напишите в комментарии какая)
2
Друзья, всем привет! Вчера обнаружил приятный отзыв на свою книгу в litres-е. Большое Вам спасибо, что находите время на обратную связь и на поддержку!
Прошу ещё, если обнаружили опечатку, напишите, пожалуйста, мне на почту info@prime-soft.biz. И еще буду рад узнать о каком примере с неправильным решением идёт речь. Напишите, пожалуйста!
👍10
Предлагаю небольшую задачку на логику и внимательность.
В доме три этажа. На первом этаже живёт один человек, на втором - два, на третьем - три. Какую кнопку лифта нажимают чаще всего?
Anonymous Quiz
89%
Кнопку первого этажа
1%
Кнопку второго этажа
10%
Кнопку третьего этажа
👍61
Здравствуйте, друзья!
Приглашаем обучиться на наших курсах "SQL. Базы данных. ORACLE. MS SQL Server, MySQL" и "Программирование в PL/SQL (ORACLE)" со скидкой 40%! Выбрать курс и записаться можно на нашем сайте: https://prime-soft.biz/courses
Будем Вас ждать!
👍6
Здравствуйте, дорогие друзья!
Предлагаю очередной небольшой тест по SQL на этот раз на знание синтаксиса команды INSERT в ORACLE и ее вариантов написания.
Выполнение какой из этих команд в ORACLE приведёт к ошибке?
Anonymous Quiz
15%
INSERT INTO MANAGERS (NAME, ID_FILIAL) VALUES ('Иванов Иван Иванович', 1)
25%
INSERT INTO MANAGERS (NAME, ID_FILIAL) SELECT 'Иванов Иван Иванович', 1 FROM DUAL
60%
INSERT INTO MANAGERS (NAME, ID_FILIAL) VALUES SELECT 'Иванов Иван Иванович', 1
👍5
Здравствуйте, дорогие друзья! Очередной небольшой тест для подкованных :) Вопрос с англоязычного ресурса из цикла "найди лишнее":
Anonymous Quiz
13%
UNION
15%
INTERSECT
32%
MINUS
41%
EXTRACT
🤔9👍2
Всем доброго утра и отличного начала рабочей (учебной) недели!

Если у Вас сегодня собеседование, то помогу перед ним немного размяться 😉 В отличии от первичного ключа таблицы, уникальный ключ (найдите верное утверждение):
Anonymous Quiz
25%
может содержать пустые значения (NULL).
35%
может быть только один в таблице.
40%
не может содержать пустые значения (NULL).
👍10😐4
Здравствуйте, дорогие друзья!

Предлагаю начать неделю с небольшого теста по SQL. В одно время этот вопрос использовался в одной из Московских софтверных компаний, где я работал. Вопрос, думаю, будет для Вас совсем простым и, скорее всего, именно он станет лидером по количеству правильных ответов!
👍41
Каким будет результат следующей арифметической операции:
1 + NULL + 1
Anonymous Quiz
2%
0
2%
1
23%
2
1%
3
72%
NULL
👍6😁1
Всем доброе утро! И отличной рабочей (учебной) недели! И вот мини-вопрос на этот понедельник: Может ли в таблице не быть первичного ключа?
Anonymous Quiz
77%
Да, первичного ключа на таблице может не быть.
23%
Нет. Первичный ключ в таблице должен быть обязательно. Таблицу без первичного ключа не создать.
🙈2