13

PostgreSQLのフィールドに複数の値を格納できるかどうか知りたいです。

Token列、、およびでid呼び出さtextれるテーブルがありますcategorycategory多値フィールドです。別のテーブルを作成する必要がありますか、Tokenそれともテーブルに保存する方法がありますか?

4

2 に答える 2

18

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");
于 2011-10-28T04:10:40.657 に答える
11

いくつかあります:

于 2011-10-28T04:24:20.453 に答える