本当に誰かが私を助けたり、少なくとも正しい方向に向けることを願っています。私は製品サイトの作業を行っています。訪問者は、www.asos.comのような製品結果の側面にあるメニューを使用して結果をフィルタリングできます。基本的に、彼らは製品タイプ、スタイル、価格、フィットなどを選択することができます。これらのフィットタイプのそれぞれは、独自のテーブルと、各値を製品テーブルにリンクする参照テーブルを持っています。 EGは、次のフィールド、Colour_ID、名前 のProductKeyとColourrefテーブルで、私はMySQLとPHPを使用していColour_IDテーブル内の同じフィールドの複数のクエリ
のProductKeyおよびその他のすべての製品情報 カラーテーブルと
製品のテーブルがあります。私はデータベースを照会し、訪問者が各フィルタータイプから1つの選択をしてから各属性の数を表示する方法を知っていますが、複数の選択をしてから計算することができるようにしたいと思います選択されたものに基づいて、各属性のカウント私はこれをどのように行うべきかを見てきましたが、サブクエリはオプションであることがわかりましたが、9つのフィルタグループがあるので、いくつのサブクエリを作成する必要があるかについて懸念しています。値。現在、データベースには製品数が1/200万であり、これは時間の経過と共に増加しています。私は、例えば
ページ= 1つの&図20 = &積= 125137147 &タイプ= 1,3,5 &色= 3,9,5として、URLを介して照会する必要がある値を捕捉してい&材質= 187,345
例からわかるように、私は毎回複数の値を持つことができます。私はANDを使って質問を書こうとしました。例:product = 125 AND product = 137ですが、これは機能しません。
誰かが正しい方向のポイントであっても、これを行う最善の方法についてアドバイスをしていますか?
すべてのヘルプは大歓迎されます
は事前に
ありがとうヴィヴィアン
こんにちはキリスト、私はすでに答えを知っていて、私の質問を削除しようとしていた。私はANDの代わりに何らかの理由でANDを使うことを考えていました。手伝ってくれてどうもありがとう。 – Amara
あなたが気にしないなら、別の質問があります。私は、クエリでINを使用すると、MySQLはカラムに設定したインデックスを使用しないことに気付きました。これによりこれらのインデックスは冗長になりますが、削除する必要はありますか?ありがとうございました – Amara
@ user1147635オプティマイザがインデックスを使用しないことを決定した場合、通常はフルテーブルスキャンが高速であるためです。すべてのID列に索引がありますか?テーブルの 'ANALYZE TABLE
関連する問題