pub struct SqliteSearchFilter { /* private fields */ }Expand description
Search filter for SQLite vector searches.
SQLite vector search applies simple indexed metadata comparisons and ranges
during sqlite-vec KNN candidate search when possible. Other supported
document-table expressions, including JSON expressions, OR, null checks,
LIKE, and GLOB, are applied after candidate search with an exhaustive
candidate limit so custom document columns can still be filtered correctly.
For hot scalar filters, prefer marking columns with Column::indexed so
they can be pushed into sqlite-vec metadata constraints instead of requiring
exhaustive candidate retrieval.
Implementations§
Source§impl SqliteSearchFilter
impl SqliteSearchFilter
Sourcepub fn not(self) -> Self
pub fn not(self) -> Self
Negates a filter.
SQLite vector search lowers NOT over simple indexed metadata
comparisons to native operators such as !=, <=, and >=. Broader
negations are applied as document-table post-filters when their
expressions can be lowered safely.
Sourcepub fn between<N>(key: String, range: RangeInclusive<N>) -> Self
pub fn between<N>(key: String, range: RangeInclusive<N>) -> Self
Tests whether a value is contained in the range.
Non-boolean indexed metadata ranges are applied during sqlite-vec candidate search. Document-table ranges are applied after candidate search and may require exhaustive candidate retrieval.
pub fn is_null(key: String) -> Self
pub fn is_not_null(key: String) -> Self
Trait Implementations§
Source§impl Clone for SqliteSearchFilter
impl Clone for SqliteSearchFilter
Source§fn clone(&self) -> SqliteSearchFilter
fn clone(&self) -> SqliteSearchFilter
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more