SQL Pro
5.08K subscribers
142 photos
2 videos
10 files
127 links
SQL Pro - всё об SQL
Реклама: @anothertechrock

Контент канала:
1. Разбор вопросов с собеседований
2. Трюки SQL
3. Видео
4. Тесты
5. Задачи на логику
6. Юмор
Download Telegram
#вопрос69

Что такое транзакции SQLite?

Решение будет вечером.

#вопросы #собеседование
1
Ответ на #вопрос69

Транзакция называется единица работы, которая выполняется в отношении базы данных. Это одно или несколько изменений в базе данных, свойства которых определяются ACID.

- Атомарность: гарантирует, что все транзакции успешно завершены.
- Согласованность: гарантирует, что база данных меняет состояние при успешной транзакции.
- Изолированность: позволяет транзакциям работать прозрачно и независимо друг от друга.
- Устойчивость: гарантирует, что результат или эффект совершенной транзакции сохранится в случае сбоя системы.

#вопросы #собеседование
👍1
Задача на мышление и логику.

1,5 белки за 1,5 минуты съедают 1,5 ореха. Сколько орехов съедят 9 белок за 9 минут?

Решение будет вечером.

#логика
Решение сегодняшней задачи на логику и мышление.

Если действие выполняется белками параллельно, а не последовательно, 1,5 белки за 1,5 минуты съедают 1,5 ореха. Стало быть, 1 белка за 1,5 минуты съедает 1 орех, а 9 белок за 1,5 минуты съедают 9 орехов.

Но это за 1,5 минуты, а нам нужно 9 минут:

9/1,5 = 6.

Умножаем количество съеденных орехов:

9*6 = 54.

9 белок за 9 минут съедают 54 ореха.

#логика
👍2
Как вернуть все записи из таблицы Persons, отсортированные в порядке убывания по FirstName?
Anonymous Quiz
88%
SELECT * FROM Persons ORDER BY FirstName DESC
2%
SELECT * FROM Persons SORT 'FirstName' DESC
4%
SELECT * FROM Persons SORT BY 'FirstName' DESC
4%
SELECT * FROM Persons ORDER FirstName DESC
1%
Посмотреть ответ
#вопрос70

Для чего используется команда .dump в SQLite?

Решение будет вечером.

#вопросы #собеседование
Ответ на #вопрос70

Команда .dump используется для создания дампа базы данных SQLite, но стоит помнить, что при после ее использования все данные будут сброшены навсегда и восстановить их будет невозможно.

#вопросы #собеседование
Трюк дня. Как объединить операторы LIKE и IN без написания сложных подзапросов?

WHERE something LIKE 'bla%'
OR something LIKE '%foo%'
OR something LIKE 'batz%'

Повысьте читаемость и расширяемость запроса.

Решение будет вечером.

#tips
🤡1
Трюк дня. Как узнать размер базы данных PostgreSQL?

Такое решение полностью стандартно, работало, и будет работать на любой СУБД:

create table patterns (pattern varchar (32));
insert into patterns values ('bla%');
insert into patterns values ('%foo%');
insert into patterns values ('batz%');

select something
from tab
where exists (
select 1
from patterns
where something like pattern
);

Вместо таблицы можно использовать любую конструкцию способную вернуть строки, такие как например: представление, табличные функции, коллекции и т.д.

#tips
🤡7👍1
#вопрос71

Что такое внешний ключ?

Решение будет вечером.

#вопросы #собеседование
👍2
Ответ на #вопрос71

Внешний ключ или FOREIGN KEY также является атрибутом ограничения и обеспечивает связь двух таблиц. По сути, это поле или несколько полей, которые ссылаются на PRIMARY KEY в родительской таблице.

Пример использования:

CREATE TABLE order (
order_id INT NOT NULL,
user_id INT,
PRIMARY KEY (order_id),
FOREIGN KEY (user_id) REFERENCES users(id)
);

В данном случае внешний ключ, привязанный к полю user_id в таблице order, ссылается на первичный ключ id в таблице users, и именно по этим полям происходит связывание двух таблиц.

#вопросы #собеседование
👍2
Задача на мышление и логику.

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

Решение будет вечером.

#логика
Решение сегодняшней задачи на логику и мышление.

1. Заполняем бочку водой (или полностью, или точно больше половины).
2. Наклоняем бочку на 45 градусов: вся лишняя вода выливается, и остается ровно половина.

#логика
💩13😁3👎1
Как выбрать все записи из таблицы "Persons", упорядоченные по полю "FirstName" в обратном порядке?
Anonymous Quiz
12%
SELECT * FROM Persons ORDER BY FirstName ASC
80%
SELECT * FROM Persons ORDER BY FirstName DESC
3%
SELECT * FROM Persons SORT BY FirstName ASC
5%
SELECT * FROM Persons ORDER 'FirstName' DESC
0%
Посмотреть ответ
#вопрос72

Как работают подстановочные знаки?

Решение будет вечером.

#вопросы #собеседование
Ответ на #вопрос72

Это специальные символы, которые нужны для замены каких-либо знаков в запросе. Они используются вместе с оператором LIKE, с помощью которого можно отфильтровать запрашиваемые данные.

Какими бывают подстановочные знаки?

% — заменить ноль или более символов;
_ — заменить один символ.

Примеры:

SELECT * FROM user WHERE name LIKE '%test%';

Данный запрос позволяет найти данные всех пользователей, имена которых содержат в себе «test».

SELECT * FROM user WHERE name LIKE 't_est';

А в этом случае имена искомых пользователей начинаются на «t», после содержат какой-либо символ и «est» в конце.

#вопросы #собеседование
Задача на мышление и логику.

В офисе расположили 3 автомата с различными напитками. В первом – кофе, во втором – чай, а в третьем – и кофе, и чай (выдает случайным образом). Для любого из них нужна 1 монета. Каждый автомат обозначен наклейкой с названием продукта, который он выдаёт. Вот только на заводе перепутали наклейки, и на каждом из трех автоматов оказалась неправильная. За сколько монет можно выяснить, где какой автомат?

Решение будет вечером.

#логика
Решение сегодняшней задачи на логику и мышление.

1. Бросаем монету в автомат с надписью «чай-кофе». Так как все наклейки расположены неверно, в зависимости от того, что выдаст автомат, мы определим его в «чайный» или «кофейный».
2. Допустим, это оказался кофейный автомат. Тогда чайный автомат не может быть ни кофейным, ни чайным: он выдает и чай, и кофе.
3. Методом исключения определяем автомат, который выдает чай.

Ответ: за 1 монету.

#логика