stackoverflow.com/questions/49942061/...
аю проблемы с производительностью на PostgreSQL, и у меня есть следующая таблица:
CREATE TABLE main_transaction (
id integer NOT NULL DEFAULT nextval('main_transaction_id_seq'::regclass),
description character varying(255) NOT NULL,
request_no character varying(18),
account character varying(50),
....
)
Выше таблицы имеет 34 столбца, включая 3FOREIGN KEY
с и он имеет более 1 миллиона строк данных. У меня есть следующие условныеSELECT
запрос:
SELECT * FROM main_transaction
WHERE upper(request_no) LIKE upper(concat('%','20080417-0258-0697','%'))
Возвращение результата в течение 2 секунд. Я хочу уменьшить рабочее время с помощью индексации таблиц. До сих пор я использовалbtree
индексации. Однако я не заметил быстрого результата. У меня вопрос, как я могу улучшить производительность для вышеупомянутого запроса?