表结构包含id,week,hot,按周切成7张表,每张表代表一周的第几天,week代表第几周,怎么查询第n周hot排名前十的记录?
业精于勤,荒于嬉;行成于思,毁于随。
テーブルを分割する方法は、テーブル間の操作を避けることです。業務をテーブル内で完結させましょう。 表をまたぐということは、分割方法に無理があるということです。
実際に複数のテーブルにまたがる必要があるビジネス シナリオがある場合は、コピーの冗長性を作成するために複数のパーティショニング方法を同時に存在させることを検討してください。
週に基づいて特定のテーブルを見つける 端的に言えば、SQL ステートメントを生成するときに特定のテーブルを指定することを意味します。
SQL ステートメントの結合の問題、テーブルの命名は規則的である必要がある、今週の取得、結合、最初の 10 件のホットは order by と上位 10 または制限 0,10 キーワードで完了します
私は個人的に mysql にロジックを組み込むのが好きではないので、テーブル分割方法に従って、7 つのテーブルから各テーブルの上位 10 件のみを抽出し、アプリケーションでそれらを比較することができます。さらに、より多くのビジネス ニーズに対応するために、月次レベルに応じてテーブルを分割することをお勧めします。テーブル パーティショニング方法はモジュラー テーブル パーティショニングに似ており、当然のことながら、一定期間内のクエリと並べ替えはサポートされません。
この種のテーブルの分割では、各テーブルの上位 10 件のみを取得してコード内で並べ替えることができます。このようなシナリオがある場合は、データの冗長性を確保する必要があります。
テーブルを分割する方法は、テーブル間の操作を避けることです。業務をテーブル内で完結させましょう。
表をまたぐということは、分割方法に無理があるということです。
実際に複数のテーブルにまたがる必要があるビジネス シナリオがある場合は、コピーの冗長性を作成するために複数のパーティショニング方法を同時に存在させることを検討してください。
週に基づいて特定のテーブルを見つける 端的に言えば、SQL ステートメントを生成するときに特定のテーブルを指定することを意味します。
SQL ステートメントの結合の問題、テーブルの命名は規則的である必要がある、今週の取得、結合、最初の 10 件のホットは order by と上位 10 または制限 0,10 キーワードで完了します
私は個人的に mysql にロジックを組み込むのが好きではないので、テーブル分割方法に従って、7 つのテーブルから各テーブルの上位 10 件のみを抽出し、アプリケーションでそれらを比較することができます。さらに、より多くのビジネス ニーズに対応するために、月次レベルに応じてテーブルを分割することをお勧めします。テーブル パーティショニング方法はモジュラー テーブル パーティショニングに似ており、当然のことながら、一定期間内のクエリと並べ替えはサポートされません。
この種のテーブルの分割では、各テーブルの上位 10 件のみを取得してコード内で並べ替えることができます。このようなシナリオがある場合は、データの冗長性を確保する必要があります。