テーブル:reward(報酬テーブル)があるとします。テーブル構造は次のようになります。 テーブルtest.rewardを作成します( id int(11) NOT NULL AUTO_INCREMENT、 uid int(11) NOT NULL COMMENT 'ユーザーuid', お金 小数点(10, 2) NOT NULL COMMENT '報酬額', datatime datetime NOT NULL COMMENT 'time', 主キー (id) ) エンジン = INNODB AUTO_INCREMENT = 1 文字セット utf8 utf8_general_ci を照合する COMMENT = '報酬テーブル'; 表のデータは次のとおりです。 ここで、各人が受け取った最高の報酬を照会し、それを最大から最小の順に並べ替える必要があります。 直接問い合わせる場合: 以下の結果が得られます。 必要な結果が得られませんでした。これは、group by と order by を一緒に使用すると、最初に group by が使用され、グループ化後の最初のデータが取り出されるためです。したがって、その後の order by による並べ替えは、取り出された最初のデータに基づいて行われますが、最初のデータは必ずしもグループ内で最大のデータであるとは限りません。 方法1: この場合、最初に並べ替え、次にグループ化し、サブクエリを使用できます。 選択 取り除く、 r.uid、 r.お金、 r.データタイム から(選択 id、 uid、 お金、 データタイム 報酬から 金額順(降順)r GROUP BY r.uid ORDER BY r.money DESC; 方法2: レコード全体を取得する必要がない場合は、max() min() を使用できます。 結果は次のとおりです。 max() を使用して取得したレコードの money フィールドと max(money) フィールドに矛盾があることに気付いたかもしれません。これは、ここでは uid の最大値のみが取得され、最大値に対応するレコード全体が取得されないためです。 レコード全体を取得する必要がある場合は、このメソッドは使用できず、サブクエリを使用できます。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
目次1. 依存関係をインストールする2. vue.config.js ファイルで pwa を設定しま...
以前、UDP を使い始めるために簡単な UDP サーバーとクライアントの例を作成しましたが、実際に使...
私はずっとキャッシュについて学びたいと思っていました。結局のところ、キャッシュはフロントエンドのパフ...
数日前、同僚がポイントモールプロジェクトを受け取りました。このプロジェクトには、カードやクーポンをギ...
Compose のいくつかの部分は、何らかの方法で環境変数を扱います。このチュートリアルは、必要な情...
0. リモート開発が必要な理由組み込み Linux を開発する場合、便宜上、通常は Windows ...
目次1. コンポーネントの紹介2. コンポーネントの内部構造とロジック1. コード組織構造2. マッ...
1. リテラルとローカル変数へのアクセスは最も高速ですが、配列要素とオブジェクト メンバーへのアクセ...
1. Oracle は大規模データベースですが、MySQL は小規模から中規模のデータベースです。O...
夜遅くまで何度も困難なシングルステップデバッグを行った後、ようやく理想的なブレークポイントを見つけま...
目次仕様a. ページファイルはVueの単一ファイルコンポーネント仕様に準拠しています。 b. コンポ...
序文ページを共有するときに、ブラウザの戻るボタンをクリックしてプロジェクトのホームページに戻り、訪問...
Redisの本やSpring Cloud Alibabaの本を執筆した際に、一部の分散コンポーネント...
ページを作成するときに、記述した CSS スタイルが有効にならないことがあります。この現象にはさまざ...
目次1. リストインターフェースとその他のモジュールの表示処理2. 従来のインターフェースコンポーネ...