PostgreSQL поддерживает параметры с дефолтными значениями, которые применяются, если аргумент не передан.
Anonymous Quiz
18%
A) Параметр меняется глобально для всех сессий
54%
B) Параметр меняется только внутри текущей транзакции
15%
C) Изменение сохраняется после коммита и отката
13%
D) SET LOCAL вызывает ошибку в транзакции
👍6
Что произойдет, если в транзакции PostgreSQL вызвать SET LOCAL для параметра, а затем выполнить ROLLBACK?
Anonymous Quiz
14%
A) Параметр останется изменённым после отката
57%
B) Параметр вернётся к значению до транзакции
26%
C) ROLLBACK вызовет ошибку из-за SET LOCAL
3%
D) Параметр изменится глобально
👍6
Типы данных для хранения вещественных чисел в PostgreSQL
#почитать
Типы данных PostgreSQL для работы с вещественными числами:
1) float4, синоним real, синоним float(1..24)
2) float8, синоним float, синоним double precision, синоним float(25..53)
3) numeric, синоним decimal (десятичные числа). Диапазон для этого типа значительный: 131072 цифр до точки и 16383 цифр после точки. Но если при определении типа указать numeric(точность, масштаб), то максимальные значения точности и масштаба 1000. numeric можно объявить с отрицательным масштабом: значения могут округляться до десятков, сотен, тысяч.
Во всех этих типах данных кроме чисел и null могут храниться значения Infinity, -Infinity, NaN.
⏱ Читать статью
#почитать
Типы данных PostgreSQL для работы с вещественными числами:
1) float4, синоним real, синоним float(1..24)
2) float8, синоним float, синоним double precision, синоним float(25..53)
3) numeric, синоним decimal (десятичные числа). Диапазон для этого типа значительный: 131072 цифр до точки и 16383 цифр после точки. Но если при определении типа указать numeric(точность, масштаб), то максимальные значения точности и масштаба 1000. numeric можно объявить с отрицательным масштабом: значения могут округляться до десятков, сотен, тысяч.
Во всех этих типах данных кроме чисел и null могут храниться значения Infinity, -Infinity, NaN.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍1
Какой из вариантов описывает поведение EXCLUDE ограничения в PostgreSQL?
Anonymous Quiz
10%
A) Гарантирует уникальность по одному столбцу
68%
B) Запрещает пересечение диапазонов или других типов данных по заданному правилу
15%
C) Аналог UNIQUE, но только для числовых данных
7%
D) Работает только с индексами типа B-tree
👍5🔥1
Какой из перечисленных типов индексов в PostgreSQL подходит для геопространственных данных?
Anonymous Quiz
8%
B-tree
12%
Hash
48%
GiST
16%
GIN
5%
BRIN
12%
SP-GiST
👍5🔥1
Что произойдёт, если в транзакции вызвать SET TRANSACTION ISOLATION LEVEL SERIALIZABLE после выполнения запросов?
Anonymous Quiz
21%
A) Уровень изоляции изменится для всей транзакции
33%
B) Изменение будет применено только к следующим запросам
33%
C) Ошибка, уровень изоляции можно задать только в начале транзакции
13%
D) Уровень изоляции изменится глобально для всех сессий
👍6👎1
❌ «В IT сейчас работы нет» — слышали такое?
А вот и нет 🙅♂️ Мы каждый день публикуем новые, живые вакансии с вилкой и прямыми контактами рекрутеров в телеграм.
Подборки для всех направлений — от джуна до лида.
Есть даже еженедельные интерншипы и стажировки для начинающих.
🔎 Выбирай свой канал:
QA → @qa_work
PM → @jobs_pm
BA/SA → @analytics_jobs
.NET → @job_dotnet
DS/ML → @dsml_jobs
PHP → @work_php
Java → @java_dev_job
Python → @jobrocket_python
🧩 Или подпишись сразу на все
А вот и нет 🙅♂️ Мы каждый день публикуем новые, живые вакансии с вилкой и прямыми контактами рекрутеров в телеграм.
Подборки для всех направлений — от джуна до лида.
Есть даже еженедельные интерншипы и стажировки для начинающих.
🔎 Выбирай свой канал:
QA → @qa_work
PM → @jobs_pm
BA/SA → @analytics_jobs
.NET → @job_dotnet
DS/ML → @dsml_jobs
PHP → @work_php
Java → @java_dev_job
Python → @jobrocket_python
🧩 Или подпишись сразу на все
👍1🔥1
Как MySQL обрабатывает запрос с использованием GROUP BY и столбцами, не входящими в агрегатные функции и не перечисленными в GROUP BY?
Anonymous Quiz
37%
Возвращает ошибку синтаксиса
17%
Возвращает произвольное значение из группы для таких столбцов
15%
Автоматически добавляет все столбцы в GROUP BY
31%
Игнорирует такие столбцы в результате
👍1🔥1
Как хранить деньги в базах данных и почему это не так просто, как кажется
#почитать
Некоторые валюты имеют фиксированный курс к другой валюте. Например, гонконгский доллар (HKD) с 1983 года привязан к доллару США в диапазоне 7,75-7,85 HKD за 1 USD.
Большинство валют ведут себя предсказуемо: 2 знака после запятой (точность, precision) — доллары, евро, рубли с их центами и копейками. Но есть и «особенные» — японская йена вообще без дробных частей, а иорданский динар делится на 1000 филсов и может довести до тысячных (0.001 JOD). Приятно, когда есть стандарты, но реальный мир любит отклонения.
Мавритания и Мадагаскар пошли своим путем: их валюты не используют десятичную систему: 1 угия = 5 хумов, 1 ариари = 5 ираймбиланджа.
У криптовалют может быть до 18 десятичных знаков (например, у ETH).
Количество знаков после запятой может изменяться со временем из-за инфляции. Деноминация решает проблему кардинально, но требует введения нового валютного кода. Пример из российской практики: до 29 февраля 2004 года использовался код валюты RUR (810), а после деноминации был введен RUB (643). Интересно, что в некоторых legacy-системах до сих пор можно встретить старый код.
У некоторых валют младшие единицы существуют только на бумаге — физически 0.1 японской йены или 0.1 южнокорейской воны не существует, хотя технически такие суммы возможны в расчетах.
При хранении цен на недорогие товары может потребоваться дополнительная точность. Например, после конвертации товар за $0.01 может стоить 0.009 евро — такую цену нужно где-то хранить, даже если евро формально имеет только 2 знака после запятой.
⏱ Читать статью
#почитать
Некоторые валюты имеют фиксированный курс к другой валюте. Например, гонконгский доллар (HKD) с 1983 года привязан к доллару США в диапазоне 7,75-7,85 HKD за 1 USD.
Большинство валют ведут себя предсказуемо: 2 знака после запятой (точность, precision) — доллары, евро, рубли с их центами и копейками. Но есть и «особенные» — японская йена вообще без дробных частей, а иорданский динар делится на 1000 филсов и может довести до тысячных (0.001 JOD). Приятно, когда есть стандарты, но реальный мир любит отклонения.
Мавритания и Мадагаскар пошли своим путем: их валюты не используют десятичную систему: 1 угия = 5 хумов, 1 ариари = 5 ираймбиланджа.
У криптовалют может быть до 18 десятичных знаков (например, у ETH).
Количество знаков после запятой может изменяться со временем из-за инфляции. Деноминация решает проблему кардинально, но требует введения нового валютного кода. Пример из российской практики: до 29 февраля 2004 года использовался код валюты RUR (810), а после деноминации был введен RUB (643). Интересно, что в некоторых legacy-системах до сих пор можно встретить старый код.
У некоторых валют младшие единицы существуют только на бумаге — физически 0.1 японской йены или 0.1 южнокорейской воны не существует, хотя технически такие суммы возможны в расчетах.
При хранении цен на недорогие товары может потребоваться дополнительная точность. Например, после конвертации товар за $0.01 может стоить 0.009 евро — такую цену нужно где-то хранить, даже если евро формально имеет только 2 знака после запятой.
Please open Telegram to view this post
VIEW IN TELEGRAM
👏4❤2🔥1
👑 Кто работает PM — тот в цирке не смеется
Наша сегодняшняя рекомендация — канал с PM юмором.
Мы работаем в проджект-менеджменте и уже не смеемся. Но если вас можно рассмешить — welcome в PM Humor
Наша сегодняшняя рекомендация — канал с PM юмором.
Мы работаем в проджект-менеджменте и уже не смеемся. Но если вас можно рассмешить — welcome в PM Humor
😁4
Как PostgreSQL обрабатывает NULL при использовании оператора DISTINCT ON?
Anonymous Quiz
35%
A) Все NULL считаются одинаковыми и объединяются в одну строку
22%
B) NULL сравниваются по значению и считаются разными
42%
C) NULL игнорируются в сравнении
1%
D) Поведение зависит от настройки сервера
Какой тип индекса MySQL лучше всего подходит для геопространственных данных?
Anonymous Quiz
32%
BTREE
22%
HASH
26%
SPATIAL
19%
FULLTEXT