TGViewer
SQL Portal | Базы Данных SQL Portal | Базы Данных @sqlportal · 14K subscribers
Post #1526 2.19K
Postgres бывает реально коварным, когда в тексте намешан разный регистр. Для поиска и индексации такого текста есть расширение citext, оно в некоторых случаях помогает. И это поле/тип тоже можно индексировать обычным b-tree.

- запросы могут находить результаты в любом регистре и в любой комбинации
- обычные text и varchar нельзя проиндексировать как регистронезависимые, а citext можно
- также помогает с UNIQUE-ограничениями на текст, когда на вход прилетает разный регистр

-- Подключаем расширение
CREATE EXTENSION IF NOT EXISTS citext;

-- Создаем таблицу с типом citext
CREATE TABLE categories (
id SERIAL PRIMARY KEY,
name CITEXT UNIQUE NOT NULL,
description TEXT
);
``` :contentReference[oaicite:0]{index=0}
::contentReference[oaicite:1]{index=1}


👉 @SQLPortal
  • 😁 2
More from @sqlportal
  1. Oct 16, 2026Масштабирование базы данных: 6 подходов, которые стоит знать Рост данных и трафика требует…
  2. Oct 16, 2026💬👨‍💻🐍💩🤖🤖🐧👩‍💻🧑‍💻👋🦀 Дождались! Ребята сделали крутейший канал про IT новой эпо…
  3. Oct 16, 2026Практические уроки для Backend, Data Engineering и DevOps Площадка с пошаговыми туториалам…
  4. Oct 15, 2026SQL проще изучать, если разделить его по задачам • Определять структуру таблиц: CREATE, AL…
  5. Oct 15, 2026Git пригодится и тем, кто пишет SQL Храните запросы, миграции и схемы БД в репозитории: та…
  6. Oct 14, 2026Дубликаты в SQL: способ зависит от задачи • DISTINCT убирает повторяющиеся сочетания выбра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →