PostgreSQLのフィールドに複数の値を格納できるかどうか知りたいです。
Token
列、、およびでid
呼び出さtext
れるテーブルがありますcategory
。category
多値フィールドです。別のテーブルを作成する必要がありますか、Token
それともテーブルに保存する方法がありますか?
PostgreSQLのフィールドに複数の値を格納できるかどうか知りたいです。
Token
列、、およびでid
呼び出さtext
れるテーブルがありますcategory
。category
多値フィールドです。別のテーブルを作成する必要がありますか、Token
それともテーブルに保存する方法がありますか?
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");