Я собираю таблицу, используя поле идентификатора файла. Каждый файл имеет имя, которое соответствует точно одному (его) идентификатору файла.Postgres «первая» функция агрегации
select file_key, min(fullfilepath)
from table
group by file_key
Поскольку я знаю структуру таблицы, я знаю, что мне нужен ЛЮБОЙ полный путь. Минимальные и максимальные ок, но это требует много времени.
Я натолкнулся на функцию агрегации this, которая возвращает первое значение. К сожалению, эта функция занимает много времени, поскольку она сканирует всю таблицу. Например, это очень медленно:
select first(file_id) from table;
Что это самый быстрый способ сделать это? С функцией агрегации или без нее.
Для первого запроса попробуйте 'select different on (file_key), file_key, fullfilepath из the_table order by file_key, fullfilepath' - that _might_ быстрее, чем' group by' –