私はこのスキーマを持っている:MYSQL一覧すべてのカテゴリを持つすべての製品
table_products:PRODUCT_ID、名前、価格、
table_categories:CATEGORY_ID、名前、
table_categories_products:CATEGORY_IDを、product_id
すべての製品には、すべての製品各製品のカテゴリ
は、実際に私はこのクエリを使用します。
SELECT p.id, p.name, p.price, GROUP_CONCAT(c.category_id, ';', c.name SEPARATOR ',')
FROM table_products
LEFT JOIN table_categories_products tcp ON tcp.product_id=p.product_id
LEFT JOIN table_categories c ON c.category_id=p.product_id
GROUP BY p.id
問題は、一つの製品は、無制限のカテゴリ内であることができることであるとGROUP_CONCATはサイズ制限があります。
私はすでに増加 "group_concat_max_len" の選択肢と考えられるが、dont'tた
更新が無限文字列を可能に
あなたは現在のセッションであるq.vの 'GROUP_CONCAT'の上限を増やすことができます。 [ここ](http://stackoverflow.com/questions/2567000/mysql-and-group-concat-maximum-length)。しかし、無限の文字列が必要な場合は、クエリを変更する必要があります。 –