powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Задачи и решения для бойца PostgreSQL статья Habr
6 сообщений из 6, страница 1 из 1
Задачи и решения для бойца PostgreSQL статья Habr
    #39702325
su_postgres
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задачи и решения для бойца PostgreSQL

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

приглашаю полистать)

https://habr.com/post/423097/
...
Рейтинг: 0 / 0
Задачи и решения для бойца PostgreSQL статья Habr
    #39702917
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
su_postgres,

и чё ?

по поводу текущей даты не освещена разница промеж стабильных и волатильных функций, например. (и влиянии на планы)
и такая немного стремная фича как литералы date'now' зато интерпретируемые до планирования.


Код: sql
1.
2.
3.
4.
5.
select
	date'now'
	,timestamp'now'
	,current_date
	,current_timestamp


Код: sql
1.
2.
Result  (cost=0.00..0.02 rows=1 width=0)
  Output: '2018-09-15'::date, '2018-09-15 12:07:55.657835'::timestamp without time zone, ('now'::cstring)::date, now()


...
Рейтинг: 0 / 0
Задачи и решения для бойца PostgreSQL статья Habr
    #39702939
fte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwwq,
qwwqи такая немного стремная фича как литералы date'now' зато интерпретируемые до планирования.

+1
не знал, всегда писал прямой вызов now(), а для партиционированных таблиц timetsamp 'now' самое оно!
А в чём стрёмность, ежели всё stable? насколько я помню now() не меняется в пределах транзакции
...
Рейтинг: 0 / 0
Задачи и решения для бойца PostgreSQL статья Habr
    #39702950
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fteqwwq,
qwwqи такая немного стремная фича как литералы date'now' зато интерпретируемые до планирования.

+1
не знал, всегда писал прямой вызов now(), а для партиционированных таблиц timetsamp 'now' самое оно!
А в чём стрёмность, ежели всё stable? насколько я помню now() не меняется в пределах транзакции

именно для партицированных

и надо проверить, время синтаксического разбора (трансляции литералов в значения) совпадает с временем транзакции или нет.
...
Рейтинг: 0 / 0
Задачи и решения для бойца PostgreSQL статья Habr
    #39702956
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ps

prepared -- вот оно то так себя веде то эдак
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
-- не пачкой :
deallocate all;
-- 
prepare foo as
select
	date'now'
	,timestamp'now'
	,current_date
	,current_timestamp
	;

-- 
--execute foo;

--'2018-09-15','2018-09-15 15:07:45.811942','2018-09-15','2018-09-15 15:07:52.974282+03'
--'2018-09-15','2018-09-15 15:07:45.811942','2018-09-15','2018-09-15 15:08:21.97761+03'
--'2018-09-15','2018-09-15 15:07:45.811942','2018-09-15','2018-09-15 15:08:46.319884+03'



а с учетом неявного препаренья библами -- потенциальный пипец.
...
Рейтинг: 0 / 0
Задачи и решения для бойца PostgreSQL статья Habr
    #39702958
fte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwwq,
qwwqи надо проверить, время синтаксического разбора (трансляции литералов в значения) совпадает с временем транзакции или нет.
Собственно ИМХО, данное условие возможно актуально для реал тайм систем(комплексов), иначе я не представляю себе что-бы "время синтаксического разбора" != "времени транзакции" существенно повлияло бы на результат, впрочем это вопрос скорее к архитектуре БД...
Или я не прав , в таком случае пример плз...
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Задачи и решения для бойца PostgreSQL статья Habr
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]