2012-02-15 21 views
0

数百万のアイテム(検索結果など)があり、これらのアイテムをソートするためのパラメータが異なるとします(eコマースサイトなど)。改ページを使用してアイテムを表示します。異なるパラメータのアイテムを効率的にソートするには?

日付、人気度、関連性によってソートされ、結果にページが表示されるとします。どのようにこの機能を実装しますか?私は一般的に、パラメータの異なる比較関数を作成し、それに応じて結果を取得します。

毎回検索結果を並べ替えるのではなく、この種の機能を効率的に利用できる方法があれば、また、関連する注文パラメータを使用するたびにsqlクエリを実行するのが一般的ですか、または以前のクエリの検索結果を並べ替えて再検索時間を節約する必要がありますか?

+0

「結果を何度も頼りにしている」とはどういう意味ですか?実際に結果を得てから並べ替えることを意味しますか?なぜ、各パラメータでソートするようにデータベースクエリを構成するだけではないのですか? – Colleen

答えて

1

「毎回検索結果を並べ替えるのではなく、この種の機能を効率的に利用できる方法があれば」

私はあなたがソートするたびに必要とするが、ユーザーには、適切なOrderByパラメータでSQLクエリを実行し、それをページ付けして表示していないと言うでしょう

「また、私たちは一般的に、関連するオーダーパラメータを使用するたびにSQLクエリを実行するのですか私たちは再検索時間から私たちを救うために前のクエリの検索結果を並べ替えるべきですか? "

新しいSQLクエリを生成する必要があります。新しいオーダーパラメーターに基づく最初のページデータは、前のものとはまったく異なるデータセットを含むことができます。

関連する問題