TGViewer
Channel Public Channel
Базы данных (Data Base)

Базы данных (Data Base)

@database_info

Базы данных (Data Base). По всем вопросам @evgenycarter
Subscribers
8.04K
Photos
675
Videos
478
Links
694

Showing posts older than #339 · Back to latest

Older Posts 14 shown
Post #334 1.28K
❗Надёжные выделенные серверы от 6 804 ₽

Снижаем цены на выделенные серверы. Теперь вы можете купить надёжный сервер со скидкой до 65%!

40+ конфигураций для разных задач ждут вас.

🔹Локации по всей России: Москва, Екатеринбург, Новосибирск, Хабаровск.
🔹 Сертифицированные дата-центры Tier III.
🔹 Встроенная защита от DDoS-атак.
🔹 Полный доступ в панель управления сервером IPMI.

Скидка действует только на новые серверы. Успейте сделать покупку до 14 апреля!

➡Выбрать сервер
Post #333 1.46K
Вопрос. Уровень: Junior
Есть категория «хитрых» вопросов, которые особенно любят задавать Junior-специалистам. Хотя чего уж там, любым специалистам.

Один из таких видов — вопросы по темам, на которые в повседневной жизни не обращаешь внимания и о которых не задумываешься. Просто делаешь на автомате, а на собеседовании это стреляет. Ну или на проекте, когда код начинает работать неправильно. Но это другая история…

Вопрос: Как оператор GROUP BY обрабатывает поля с NULL?

Если Вы не знаете ответ на этот вопрос, то после прочтения ответа обязательно проверьте свои проекты — может у вас где-то закралась ошибка?


Ответ
Учитывая, что NULL в SQL — просто отсутствие значения, то все значения NULL при группировке попадают в одну группу. Например, пусть есть таблица:

name | score
------|-------
Vasya | 5
Petya | 10
Petya | 3
Vasya | 4
NULL | 3
NULL | 8


Тогда запрос select sum(score) from table group by name даст:

name | score
------|-------
Vasya | 9
Petya | 13
NULL | 11

#db

👉 @database_info
  • 👍 16
Post #331 12.7K
Вопрос с собеседования Dropbox

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

​db_employee

id:int
first_name:varchar
last_name:varchar
salary:int
department_id:int
db_dept

id:int
department:varchar

Ответ:

select abs(max(salary) filter (where department = 'marketing') - max(salary) filter (where department = 'engineering'))
from db_employee emp
LEFT JOIN db_dept dept on emp.department_id = dept.id


#db

👉 @database_info
  • 👍 4
Post #328 1.71K
Администрирование SQL Server

Администрирование SQL Server ч.1. Базы данных.
BackUp/Restore баз данных. Администрирование SQL Server ч.2
Администрирование SQL Server ч.3 Login, User.
Администрирование SQL Server ч.4. Роли
Импорт/Экспорт данных SQL. Администрирование SQL Server ч.5
Установка SQL Server. Администрирование SQL Server ч.6.
SQL Profiler. Администрирование SQL Server ч.7
План запроса SQL. Администрирование SQL Server ч.8
Журнал транзакций ms sql
Поддержка баз данных в Microsoft SQL Server 2008 R2 day1

Все видео доступны на youtube

#db

👉 @database_info
  • 👍 6
Post #327 12.3K
Вопрос по SQL с собеседования Airbnb

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

airbnb_search_details

id:int
price:float
property_type:varchar
room_type:varchar
amenities:varchar
accommodates:int
bathrooms:int
bed_type:varchar
cancellation_policy:varchar
cleaning_fee:bool
city:varchar
host_identity_verified:varchar
host_response_rate:varchar
host_since:datetime
neighbourhood:varchar
number_of_reviews:int
review_scores_rating:float
zipcode:int
bedrooms:int
beds:int


Ответ

SELECT city, property_type, avg(bedrooms) as n_bedrooms_avg, avg(bathrooms) as n_bathrooms_avg
FROM airbnb_search_details
GROUP BY city, property_type
ORDER BY city


#db

👉 @database_info
  • 👍 7
  • 😁 2
Post #325 4.66K
Какие существуют операторы SQL?

операторы определения данных (Data Definition Language, DDL):
• CREATE создает объект БД (базу, таблицу, представление, пользователя и т. д.),
• ALTER изменяет объект,
• DROP удаляет объект;

операторы манипуляции данными (Data Manipulation Language, DML):
• SELECT выбирает данные, удовлетворяющие заданным условиям,
• INSERT добавляет новые данные,
• UPDATE изменяет существующие данные,
• DELETE удаляет данные;

операторы определения доступа к данным (Data Control Language, DCL):
• GRANT предоставляет пользователю (группе) разрешения на определенные операции с объектом,
• REVOKE отзывает ранее выданные разрешения,
• DENY задает запрет, имеющий приоритет над разрешением;

операторы управления транзакциями (Transaction Control Language, TCL):
• COMMIT применяет транзакцию,
• ROLLBACK откатывает все изменения, сделанные в контексте текущей транзакции,
• SAVEPOINT разбивает транзакцию на более мелкие.

#db

👉 @database_info
  • 👍 10
Post #322 2.46K
Самоучитель SQL для начинающих: Изучите SQL за 7 дней
Бесплатные уроки по SQL на английском

Базы данных можно найти почти во всех программных приложениях. SQL - это стандартный язык для запросов к базе данных. Этот самоучитель SQL для начинающих научит вас проектированию баз данных. Кроме того, здесь вы узнаете о базовом и продвинутом SQL.

https://www.guru99.com/sql.html

#db

👉 @database_info
  • 👍 8
Post #321 17.7K
Порядок выполнения SQL-запросов

#db

👉 @database_info
  • 👍 17
Post #320 4.86K
Вопрос с собеседования Microsoft

Найдите общее количество загрузок для платных и бесплатных пользователей по дате. Включайте только те записи, в которых неоплачиваемые клиенты имеют больше загрузок, чем платные клиенты. Вывод должен быть сначала отсортирован по самой ранней дате и содержать дату в 3 столбцах, бесплатные загрузки, платные загрузки.

ms_user_dimension

user_id:int
acc_id:int
ms_acc_dimension

acc_id:int
paying_customer:varchar
ms_download_facts

date:datetime
user_id:int
downloads:int


Ответ

with out AS(select date
, Sum (downloads) Filter(Where paying_customer = 'no') as non_paying
, Sum (downloads) Filter(Where paying_customer = 'yes') as paying
From ms_download_facts fact
Left Join ms_user_dimension a
on fact.user_id = a.user_id
Join ms_acc_dimension acc
on a.acc_id = acc.acc_id
Group by date
order by date)
Select date , non_paying , paying
From out
Where non_paying > paying


👉 @database_info
  • 👍 8
Post #315 2.07K
Рекомендуем к прочтению книгу Александра Бындю "Антихрупкость в IT"

Эта книга — результат многолетнего опыта построения IT-продуктов. И прежде всего она о том, как выстроить процессы разработки IT-систем таким образом, чтобы успевать вовремя подстроиться под любые изменения.

В её основе — описание работающих практик, примеры из реальных проектов, анализ ошибок и выводы. В книге собраны рекомендации для владельцев бизнеса и разработчиков. Первые приобретут систематизированные знания о том, как правильно взаимодействовать с IT, а вторые — как делать хорошо и не делать плохо.

Сайт издания

Ознакомиться с книгой
Post #314 14.1K
Вопрос с собеседования Amazon

Напишите запрос, который будет идентифицировать возвращающихся активных пользователей. Вернувшийся активный пользователь — это пользователь, совершивший вторую покупку в течение 7 дней после любой другой покупки. Выведите список user_id этих вернувшихся активных пользователей.

amazon_transactions

id:int
user_id:int
item:varchar
created_at:datetime
revenue:int


Ответ

SELECT
DISTINCT(a.user_id)
FROM amazon_transactions a
JOIN amazon_transactions b
ON a.user_id = b.user_id
WHERE a.created_at - b.created_at BETWEEN 0 AND 7
AND a.id != b.id


#db

👉 @database_info
  • 👍 16
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →