PostgreSQL: повышение производительности при запросе SELECT для метки времени со столбцом часового пояса

У меня более 1 миллиона строк в таблице, и мой запрос SELECT работает медленно, когда я ищу между диапазон дат. Итак, у меня есть следующая таблица

CREATE TABLE public.main_transaction
(
  id integer NOT NULL DEFAULT nextval('main_transaction_id_seq'::regclass),
  description character varying(255) NOT NULL,
  transaction_type character varying(18) NOT NULL,
  pub_date timestamp with time zone NOT NULL,
  ...
)

В таблице выше 34 столбца, включая 3 FOREIGN KEY и
. Я хочу ускорить следующий запрос.

SELECT * FROM main_transaction 
WHERE 
   pub_date >= '2018-01-01'
   AND pub_date <'2018-01-08'

Теперь он работает в 12 секунд. :(

Кстати, пробовал решение это. Однако особых изменений я не заметил.

план выполнения:

Seq Scan on main_transaction t (cost=0.00..74437.33 rows=28974 width=1455)
  Filter: ((pub_date >= '2018-01-01 00:00:00+05'::timestamp with time zone) AND (pub_date < '2018-01-08 00:00:00+05'::timestamp with time zone))

план выполнения пожалуйста

Vao Tsun 01.05.2018 14:36

Какое определение индекса у вас есть?

Ben 01.05.2018 14:39

@Vao Tsun "Seq Scan on main_transaction t (cost = 0.00..74437.33 rows = 28974 width = 1455)" "Фильтр: ((pub_date> = '2018-01-01 00: 00: 00 + 05' :: отметка времени с часовой пояс) AND (pub_date <'2018-01-08 00: 00: 00 + 05' :: отметка времени с часовым поясом)) "

mr.sanatbek 01.05.2018 14:41

@Ben Пожалуйста, обратитесь к следующим ссылкам, чтобы понять мою таблицу 1 звено и 2-звено

mr.sanatbek 01.05.2018 14:44

Лоренц предлагает создать указатель в указанном вами ответе - что вы имеете в виду, это не помогло? как ты это проверил? проанализировали таблицу и проверили план? ..

Vao Tsun 01.05.2018 14:45

Производительность такая же после индексации, как сказал @Laurenz.

mr.sanatbek 01.05.2018 14:50

Пожалуйста, укажите соответствующую информацию в этом вопросе.

Ben 01.05.2018 15:38

@Ben Пожалуйста, поясните, что вы имеете в виду под словом "релевантный"? И, что в моем вопросе неактуально.

mr.sanatbek 01.05.2018 16:09

Пожалуйста, укажите в вопросе необходимую информацию. Например. определения индекса.

Ben 01.05.2018 16:11

@ben Пожалуйста, откройте 1-ссылку и 2-ссылку, как я уже упоминал выше, комментарий. Здесь объясняются все ограничения и определения индексов. Лоренц и раньше помогала мне делать индексацию. Итак, индексы больше не определены, кроме этих ссылок.

mr.sanatbek 01.05.2018 17:02

Пожалуйста, поместите информацию, необходимую для вопроса это, в вопрос это. Вот как этот сайт должен работать.

Ben 01.05.2018 17:11
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
11
500
0

Другие вопросы по теме