私は通常の2つのテーブル、製品、カテゴリを持っていますが、多対多関係のため、両方を関連付けるキーマッピングテーブルを作成しました。この連想表は、まさにこのような例のためである:彼らはそれぞれのproduct_id
とcategory_id
主キーに外部キーです関連テーブルを使用して製品、カテゴリをクエリ
id product_id category_id
1 2 4
2 2 6
3 3 4
etc
。
これで、結果をテストするクエリを作成しようとしています。通常、特定のカテゴリに属している商品をいくつか紹介したいと思います。しかし、いくつかのクエリを試しましたが、私はmysql構文にエラーがあることを示しています。
select products.name
from products
join producto-categoria
on producto-categoria.product_id = products.id
join categorias
on producto-categoria.category_id = categorias.id
where categorias.id = 3
limit 100
私は実際には最初のphpmyadminの構造を作成し、それぞれのCSVファイルをアップロードして、最終的には彼らのFK連想テーブルにインデックスを作成した(また、キーマッピングテーブルと呼ばれる)と、私は持っていなかったを介してそれらをリンクFKリンクを作成している間にエラーが発生しました。 InnoDBエンジンとして。
は、あなたのテーブルの名前を変更します。 –