Skip to content

SqueakQL text search

Use LIKE for case-sensitive matching and ILIKE for case-insensitive matching:

title ILIKE '%oauth%'
description LIKE '%signature%'

% matches zero or more characters and _ matches one character, including a Unicode character. Backslash escapes the next pattern character: \% and \_ match literal wildcards, and \\ matches a literal backslash. Backslashes are preserved by SqueakQL strings; JSON transport requires normal JSON escaping. A pattern cannot end with an unpaired backslash. Matching covers the whole value, so use surrounding % for a substring. ILIKE case folding follows the database locale; it is not accent-insensitive matching or a regular expression.

title LIKE '%100\%\_complete%'

description matches the current Markdown body, falling back to legacy description text when no non-empty canonical body exists. Empty descriptions are treated as NULL. These text predicates do not perform full-text ranking, stemming, or word search.

Patterns are data values passed through the query parameter binder. A pattern that contains quote characters, semicolons, or comment-looking text stays a literal pattern and cannot add a second statement.