Provides a case-insensitive text type.
TEXT
data type but treats values as case-insensitive when comparing or indexing, making it useful for case-insensitive searches and unique constraints.
Your Nile database arrives with citext
extension already enabled, so there’s no need to run create extension
.
LOWER()
.CITEXT
column just like a TEXT
column:
UNIQUE
constraint on a CITEXT
column ensures case-insensitive uniqueness:
'APPLE'
or 'apple'
would result in a constraint violation.
citext
extension is enabled, queries automatically become case-insensitive:
'Apple'
, 'APPLE'
, or 'apple'
.
CITEXT
is slightly slower than TEXT
due to case normalization.LOWER(column1)
.citext
extension in PostgreSQL simplifies case-insensitive text handling, making it ideal for usernames, emails, and other text fields where case differences should be ignored.
For more details, refer to the PostgreSQL documentation.