SQLite の GROUP_CONCAT
次のようなデータを操作する場合、
1 A 1 B 1 C 1 D 2 E 2 F 3 G 3 H 3 I 3 J 3 K
データを表示する必要がある場合があります。連結形式:
1 A,B,C,D 2 EF
GROUP_CONCAT 関数を使用してこれを実現するには、GROUP BY 句を含める必要があります。目的の結果を得るには、テーブルを結合することも必要です。
次の SQL ステートメントを使用できます:
SELECT AI._id, GROUP_CONCAT(Name) AS GroupedName FROM ABSTRACTS_ITEM AI JOIN AUTHORS_ABSTRACT AAB ON AI.ID = AAB.ABSTRACTSITEM_ID JOIN ABSTRACT_AUTHOR AAU ON AAU._id = AAB.ABSTRACTAUTHOR_ID GROUP BY AI._id;
または、次のクエリを使用できます:
SELECT ID, GROUP_CONCAT(NAME) FROM (select ABSTRACTS_ITEM._id AS ID, Name from ABSTRACTS_ITEM, ABSTRACT_AUTHOR, AUTHORS_ABSTRACT where ABSTRACTS_ITEM._id = AUTHORS_ABSTRACT.ABSTRACTSITEM_ID and ABSTRACT_AUTHOR._id = AUTHORS_ABSTRACT.ABSTRACTAUTHOR_ID) GROUP BY ID;
これらのクエリはどちらも、データを ID でグループ化し、名前を連結することで目的の出力を生成します。
以上がSQLite で GROUP_CONCAT を使用してデータを連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。