В PostgreSQL есть массивы .Например:
CREATE TABLE "token" (
"id" integer PRIMARY KEY,
"text" text,
"category" text[]
);
Теперь вы можете вставить несколько категорий для каждой строки в token
:
INSERT INTO "token" ("id", "text", "category")
VALUES (1, 'some text', ARRAY['cate1', 'cate2']);
Вы можете найти такие строки как:
SELECT * FROM "token" WHERE 'cate1' = ANY ("category");