Определение сортировки для ограничения виртуальной таблицы
const char *sqlite3_vtab_collation(sqlite3_index_info*,int);
Данная функция может быть вызвана только из метода xBestIndex виртуальной таблицы. Функция возвращает указатель на строку, содержащую имя соответствующей последовательности сортировки, используемой для сравнения текста в ограничении, определённом её аргументами.
Первый аргумент должен быть указателем на объект sqlite3_index_info, являющимся первым параметром метода xBestIndex(). Второй аргумент — индекс в массиве aConstraint[] структуры sqlite3_index_info, переданной в xBestIndex.
Важно: первый параметр должен быть тем же указателем, что и тот, который передаётся в метод xBestMethod(). Первый параметр не может быть указателем на другой объект sqlite3_index_info, даже если это точная копия.
Значение возврата вычисляется следующим образом:
Если ограничение происходит от выражения в операторе WHERE, содержащего оператор COLLATE, то возвращается имя сортировки, указанное этим оператором COLLATE.
Если оператора COLLATE нет, но столбец, являющийся объектом ограничения, указывает альтернативную последовательность сортировки через оператор COLLATE в определении столбца в операторе CREATE TABLE, переданном в sqlite3_declare_vtab(), то возвращается имя этой альтернативной последовательности сортировки.
В противном случае возвращается «BINARY».
См. также списки Объектов, Констант и Функций.
SQLite is in the Public Domain.
https://sqlite.org/c3ref/vtab_collation.html