私は次のクエリを持っています:
SELECT title_id, title, array_agg(g.name)
FROM title t
INNER JOIN title_genre tg USING(title_id)
INNER JOIN genre g USING (genre_id)
GROUP BY title_id, title
ORDER BY title_id
LIMIT 10
このクエリからの出力例:
5527; "The Burbs"; "{Suspense、" Dark Humor&Black Comedies "、Comedy、" Cult Comedies "}" 5528; "20,000 Leagues Under the Sea"; "{" Family Adventures "、" Children&Family "、" Ages 5-7 "、" Book Characters "、" Family Animation "}" 5529; "2001:A Space Odyssey"; "{" Classic Sci-Fi&Fantasy "、" Sci-Fi Thrillers "、Classics}" 5530; "2010:私たちが連絡をとる年"; "{"サイエンスフィクションドラマ"、"エイリアンSF "、"サイエンスフィクションとファンタジー "、"現代文学に基づくドラマ "、"サイコスリラー "、"本に基づくドラマ"}" 5531;"三十九夜";"{"本に基づくドラマ"、"イギリス "、スリラー、"スパイスリラー "、"古典文学に基づくドラマ "、サスペンス}" 5532; "4D Man"; "{" Classic Sci-Fi&Fantasy "、" Sci-Fi&Fantasy "、" Sci-Fi Horror "}" 5533; "8 Seconds"; "{Drama、" Romantic Dramas "、Biographies、" Indie Dramas "、" Sports Dramas "、" Miscellaneous Sports "、" Sports Stories "、" Other Sports "}" 5534; "9 1/2 Weeks"; "{" Steamy Romance "、Romance、" Romantic Dramas "}" 5535;"昨夜について...";"{"ロマンチックドラマ"、"ロマンチックコメディ"、ロマンス}" 5536; "Above the Law"; "{" Action&Adventure "、" Action Thrillers "、" Martial Arts "}"
(1)array_agg関数の周りにNHibernate基準を作成するにはどうすればよいですか?これに対応するために、PostgreSQLダイアレクトを何らかの方法で拡張する必要がありますか?
(2)統合テストデータベースとしてSQLiteを使用し、テスト/製品データベースとしてPostgreSQLを使用しています。SQLiteにはarray_agg関数はありませんが、同様のことを行うgroup_concat関数があります。テストでSQLiteを使用し、test / prodでPostgreSQLを使用できるように設定することは可能ですか?
(3)array_aggは、データを配列として返します。NHibernateを拡張してPostgreSQL配列を処理する方法を説明する素晴らしい記事をnhibernate.infoで見つけました。これを基準に含めるにはどうすればよいですか?たとえば、ロマンチックなドラマではないドラマのジャンルのタイトルを見つけたいとします。
助けてくれてありがとう!