[API reference](https://evolu.dev/docs/api-reference) › [@evolu/sqlite-wasm](https://evolu.dev/docs/api-reference/sqlite-wasm) › [c-api](https://evolu.dev/docs/api-reference/sqlite-wasm/c-api) › sqlite3\_vtab\_distinct

```ts
function sqlite3_vtab_distinct(
  deps: SqliteWasmDep,
): (indexInfo: SqliteIndexInfoPtr) => number;
```

Defined in: [packages/sqlite-wasm/src/CApi.ts:3084](https://github.com/evoluhq/evolu/blob/bc4578a260dd15d5bbf94b83765ca05984d194cb/packages/sqlite-wasm/src/CApi.ts#L3084)

Returns how the planner needs a virtual table's rows for orderByConsumed: 0
in aOrderBy order, 1 with equal aOrderBy values adjacent, 2 adjacent with
duplicates over colUsed omittable, 3 in order with such duplicates omittable.
Only xBestIndex may call it.

Wasm type `i(i)`. Signature `["sqlite3_vtab_distinct", "int",
"sqlite3_index_info*"]` from SQLite's table.

See https://sqlite.org/c3ref/vtab_distinct.html.