Partial index строится по подмножеству строк: CREATE INDEX ... WHERE status = 'active'. Меньше размер, быстрее обновление. Covering index содержит все столбцы запроса (Index-Only Scan): в Postgres через INCLUDE. Запрос выполняется без обращения к таблице. В Go выгодно выбирать только нужные столбцы, чтобы использовать covering index.
CREATE INDEX idx ON orders (user_id) INCLUDE (total, status);