Ответ на #вопрос58
NVARCHAR способен хранить значения в формате Unicode – каждый символ занимает 2 байта, а кодировка занимает 65 536 символов.
VARCHAR хранит значения в формате ASCII – каждый символ занимает байт, а кодировка занимает 256 символов.
#вопросы #собеседование
NVARCHAR способен хранить значения в формате Unicode – каждый символ занимает 2 байта, а кодировка занимает 65 536 символов.
VARCHAR хранит значения в формате ASCII – каждый символ занимает байт, а кодировка занимает 256 символов.
#вопросы #собеседование
👍1🤔1
Трюк дня. Как быстро заполнить таблицу 1 000 000 ТЕСТОВЫХ записей?
Создадим таблицу samples с точно такой же структурой, что и таблица tests. Заполним ее 10 тестовыми записями.
10 x 10 x 10 x 10 x 10 x 10 = 1 000 000 записей
Если в таблице samples будет 100 записей, для получения 1 000 000 записей будет достаточно соединений трех таких таблиц, если в samples будет 1000 записей, будет достаточно объединить таблицу саму с собой один раз.
Вставить результат в целевую таблицу tests можно при помощи оператора INSERT ... SELECT ...
Создадим таблицу samples с точно такой же структурой, что и таблица tests. Заполним ее 10 тестовыми записями.
CREATE TABLE samples (
title varchar(256) NOT NULL
);
INSERT INTO
samples (title)
VALUES
('8iRDgsEIq4GmOs32FnHM3b3cH60n3mm8070'),
('UAmsXyrKgApfHMyV2kUrYqLphN99Q7TJSoe'),
('OX1qiFeTigcOTO5JVvgFk7MRDgjgatkTqwL'),
('CT9Kfbplp4QC87G32UIKlkGd31jdjt4qH4f'),
('WsAhjBL5tAgihYZBtX97FNUmEpXavhb4CRw'),
('LwaitJ5dieXyixEmjJXhhqDY8Zg9Tu5ecoV'),
('KpHsnqrcMCpkRxkGNMjEJV0jFaeucPtbLWe'),
('t2GSIDOvW14eMlroAWrRR6xU5DoeNUXY0lD'),
('rSvrEPxR8rcw7QYjXfeNdyf3LpqYNHu3W7a'),
('6liUHPkjnygSatoUB4juZ5TaJZjaxHpR4BL');
Для того, чтобы превратить 10 записей из таблицы samples в 1 000 000 записей произведем самообъединение таблицы samples шесть разSELECT
fst.title
FROM
samples AS fst,
samples AS snd,
samples AS thd,
samples AS fth,
samples AS fif,
samples AS sth;
Оператор JOIN, который в SQL может быть заменен обычной запятой, осуществляет декартово соединение таблиц, когда каждой записи одной таблицы сопоставляется каждая запись другой таблицы. Таким образом, если в одной таблице 10 записей и в другой таблице 10 записей, результирующая таблица, полученная их соединением через JOIN будет содержать 100 записей. Как нетрудно увидеть10 x 10 x 10 x 10 x 10 x 10 = 1 000 000 записей
Если в таблице samples будет 100 записей, для получения 1 000 000 записей будет достаточно соединений трех таких таблиц, если в samples будет 1000 записей, будет достаточно объединить таблицу саму с собой один раз.
Вставить результат в целевую таблицу tests можно при помощи оператора INSERT ... SELECT ...
INSERT INTO
tests
SELECT
fst.title
FROM
samples AS fst,
samples AS snd,
samples AS thd,
samples AS fth,
samples AS fif,
samples AS sth;
#tips🤡8👍3
Как выбрать все записи из таблицы Persons, где значение поля LastName в алфавитном порядке находится между значениями "Hansen" и "Pettersen"?
Anonymous Quiz
55%
SELECT * FROM Persons WHERE LastName BETWEEN 'Hansen' AND 'Pettersen'
15%
SELECT * FROM Persons WHERE LastName>'Hansen' AND LastName<'Pettersen'
11%
SELECT * FROM Persons WHERE LastName>='Hansen' AND LastName<='Pettersen'
12%
SELECT * FROM Persons WHERE LastName ASC 'Hansen' AND 'Pettersen'
7%
Посмотреть ответ
💩2
#вопрос59
Что такое план запросов? Когда бы вы его использовали? Как посмотреть план?
Решение будет вечером.
#вопросы #собеседование
Что такое план запросов? Когда бы вы его использовали? Как посмотреть план?
Решение будет вечером.
#вопросы #собеседование
🔥1💩1
✅ Хотите научиться управлять базами данных?
Освоить язык SQL, научиться оптимизировать запросы, понимать возможности разных СУБД и правильно подбирать их под проект поможет онлайн-курс «Базы данных» от OTUS.
⚠️ Преподаватели-практики научат вас работать с самыми востребованными БД: PostgreSQL, MySQL, Redis, MongoDB, Cassandra и т. д.
📌 В конце обучения вас ждет собственный SQL-проект, который можно будет показывать при трудоустройстве.
Старт занятий30 мая
.👉 ПРОЙДИТЕ ТЕСТ
https://otus.pw/sn0p/
Освоить язык SQL, научиться оптимизировать запросы, понимать возможности разных СУБД и правильно подбирать их под проект поможет онлайн-курс «Базы данных» от OTUS.
⚠️ Преподаватели-практики научат вас работать с самыми востребованными БД: PostgreSQL, MySQL, Redis, MongoDB, Cassandra и т. д.
📌 В конце обучения вас ждет собственный SQL-проект, который можно будет показывать при трудоустройстве.
Старт занятий
https://otus.pw/sn0p/
Нативная интеграция. Информация о продукте www.otus.ru💩3👎1🤡1
Ответ на #вопрос59
План запросов – это "карта", отображающая графически или в виде текста способы получения данных, последовательность операций, сортировки, группировки и т. д. Эти планы очень полезны разработчику для понимания и анализа характеристик производительности запроса или хранимой процедуры.
Во многих системах SQL план выполнения можно получить с помощью ключевого слова EXPLAIN. В Microsoft SQL Server Query Analyzer имеет в раскрывающемся меню параметр “Show Execution Plan”. Если его активировать, то при выполнении запроса план будет отображаться в отдельном окне.
#вопросы #собеседование
План запросов – это "карта", отображающая графически или в виде текста способы получения данных, последовательность операций, сортировки, группировки и т. д. Эти планы очень полезны разработчику для понимания и анализа характеристик производительности запроса или хранимой процедуры.
Во многих системах SQL план выполнения можно получить с помощью ключевого слова EXPLAIN. В Microsoft SQL Server Query Analyzer имеет в раскрывающемся меню параметр “Show Execution Plan”. Если его активировать, то при выполнении запроса план будет отображаться в отдельном окне.
#вопросы #собеседование
👍3
Как выглядит запрос, для вывода ВСЕХ значений из таблицы Orders:
Anonymous Quiz
4%
select ALL from Orders;
0%
select % from Orders;
95%
select * from Orders;
1%
select *.Orders from Orders;
🤡6💩4
При помощи оператора UNION нельзя объединить результаты запросов:
Anonymous Quiz
10%
содержащих подзапросы
77%
с разным числом столбцов
6%
содержащих дубликаты
6%
если запросов больше трех
👍1
#вопрос60
Как из таблицы выбрать все записи c четными ID? А с нечетными?
Решение будет вечером.
#вопросы #собеседование
Как из таблицы выбрать все записи c четными ID? А с нечетными?
Решение будет вечером.
#вопросы #собеседование
🔥3
Ответ на #вопрос60
Это один из распространенных вопросов по SQL на собеседованиях.
Выбор четных записей:
Это один из распространенных вопросов по SQL на собеседованиях.
Выбор четных записей:
Select * from table where id % 2 = 0Выбор нечетных записей:
Select * from table where id % 2 != 0#вопросы #собеседование
1 июня, 16:00
Вебинар: Как связать выделенный сервер и базы данных на примере PostgreSQL
Приглашаем на практический вебинар от @Selectel, в рамках которого ребята покажут, как перенести PostgreSQL с выделенного сервера в облако. Настроят облачную сеть между базами данных и выделенным сервером и расскажут, как работает продукт Database as a Service.
На вебинаре вы научитесь:
◽️ работать с облачными базами данных PostgreSQL,
◽️ улучшать производительность баз данных,
◽️ повышать безопасность приложений, чтобы они соответствовали требованиям 152-ФЗ.
За лучший вопрос можно получить фирменного маскота — Тирекса. Участие бесплатное, регистрируйтесь по ссылке: https://slc.tl/xou81
Реклама ООО «Селектел» Kra23ussG
Вебинар: Как связать выделенный сервер и базы данных на примере PostgreSQL
Приглашаем на практический вебинар от @Selectel, в рамках которого ребята покажут, как перенести PostgreSQL с выделенного сервера в облако. Настроят облачную сеть между базами данных и выделенным сервером и расскажут, как работает продукт Database as a Service.
На вебинаре вы научитесь:
◽️ работать с облачными базами данных PostgreSQL,
◽️ улучшать производительность баз данных,
◽️ повышать безопасность приложений, чтобы они соответствовали требованиям 152-ФЗ.
За лучший вопрос можно получить фирменного маскота — Тирекса. Участие бесплатное, регистрируйтесь по ссылке: https://slc.tl/xou81
Реклама ООО «Селектел» Kra23ussG
👍2❤1
Трюк дня. Как выбрать строки из таблицы #1, id которых отсутствуют в таблице #2 с условием?
Таблица 1: "notification":
userId | type
-------------
1 | 1
2 | 2
3 | 991
4 | 991
Таблица 2 "user":
vkId | something
-------------
1 | 1111
2 | 2222
3 | 3333
4 | 4444
Как выбрать пользователей из 2-ой таблицы, но только тех, которых нет в таблице №1 с type = 991?
Решение будет вечером.
#tips
Таблица 1: "notification":
userId | type
-------------
1 | 1
2 | 2
3 | 991
4 | 991
Таблица 2 "user":
vkId | something
-------------
1 | 1111
2 | 2222
3 | 3333
4 | 4444
Как выбрать пользователей из 2-ой таблицы, но только тех, которых нет в таблице №1 с type = 991?
Решение будет вечером.
#tips