Как сделать индекс для пользовательской сортировки?
В общем имеется таблица items(id,category_id,c1,c2,c3,c4), где id - первичный ключ, category_id - категория предмета, и имеются некоторые параметры(c1,c2,c3,c4), причем у этих параметров есть некоторые ограничения: c1 - может принимать значения 1 или 2, c2 - от 1 до 100, c3 - от 1 до 100, с4 - это UNIX timestamp. Необходимо создать индекс для следующего запроса: SELECT * FROM items WHERE category_id = $1 ORDER BY $2 DESC, $3 DESC, $4 DESC, $5 DESC. Где все в ORDER BY это параметры c с1 по c4, которые определяются пользователем. Кстати, отдельный случай может быть, когда некоторые поля могут отсутствовать, то есть просто быть ORDER BY $2 DESC, $3 DESC. Индекс для такого я не знаю как сделать, в этом собственно и вопрос. Есть возможность реализовывать это вне SQL.