PostgreSQLではカラムのデータ型に配列を使うことが出来る。いちおうSQL99準拠なのかな。 何はともあれテーブルを作成する SQLはこんな感じ。 CREATE TABLE favorites ( username varchar(20), -- ユーザ名 category varchar(20), -- カテゴリ名 items varchar(100)[], -- アイテム名(複数) PRIMARY KEY(username, category) ); itemsの部分が配列。プログラミング言語のように型名に括弧を付けた形で指定する。 括弧内に要素数を指定することもできるが、現在の実装では要素数の指定は無視され、無制限として扱われるとのこと(但しSQL99の仕様では要素数は固定にしかできない)。 また、配列の宣言方法はSQL99に準拠したitems varchar(100) ARR