MySQL 集計関数のソート

MySQL 集計関数のソート

MySQL 結果のソート - 集計関数

環境

テーブル「学生」を作成(
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学生番号',
  `student_name` varchar(255) 文字セット utf8 COLLATE utf8_general_ci NOT NULL COMMENT '学生名',
  `sex` varchar(5) 文字セット utf8 照合 utf8_general_ci NOT NULL コメント '性別\r\n',
  `age` int(11) NULL デフォルト NULL コメント '年齢',
  `result` double(10, 0) NULL デフォルト NULL コメント '結果',
  BTREE を使用した主キー (`id`)
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
`student` に VALUES (1, '小王', '男', 18, 90) を挿入します。
`student` に VALUES (2, 'Xiao Li', '女性', 19, 80) を挿入します。
`student` に VALUES (3, 'Xiao Ming', '男性', 20, 85) を挿入します。
INSERT INTO `student` VALUES (4, '小张', '男', 21, 87);

クエリ結果の並べ替え

最も一般的な用途は、Weibo で人気のある製品やホットな検索をフィルタリングすることです。

構文形式:

SELECT フィールド名 1… FROM テーブル名 ORDER BY フィールド名 1 [ASC | DESC ], フィールド名 2 [ASC | DESC ]…;

フィールド名 1 と 2 は、クエリ結果を並べ替えるための基準となります。 ASC は昇順、DESC は降順を意味します。 デフォルトは ASC です。

前足を上げてください:

SELECT * FROM student ORDER BY age DESC ; 

·

2 つの並べ替えルールが続く場合、最初のフィールド名は同じになり、並べ替えは 2 番目のフィールド名の並べ替えルールに基づいて行われます。

あなたがしなければならないのは、自分でそれを理解することだけです。

考える:

age を降順、student_name を昇順で検索する関数の書き方を教えてください。

クエリのグループ化と集約

集計関数

関数効果
平均()列の平均を返します
カウント()列内の行数を返します(統計)
最大()列の最大値(max)を返します
最小値()列内の最小値(最小値)を返します
和()列内の値の合計を返します(合計)

生徒の平均年齢を確認する

学生から「年齢」としてAVG(年齢)を選択します。 

総人数を確認する

学生から「総人数」としてcount(id)を選択します。 

各年齢の人数を調べます。

学生グループから年齢、count(id)を「総人数」として選択します。年齢別; 

ここに画像の説明を挿入

最高年齢を確認する

学生から「最大年齢」として MAX(age) を選択します。 

[外部リンク画像の転送に失敗しました。ソースサイトにはアンチホットリンクメカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-dzr9FGai-1619187251369) (8mysql_result sorting_aggregation function.assets/image-20210423220055446.png)]

同じより少ない。

男性と女性の数を調べてください

select sex ,count(*) AS "人数" from student GROUP BY sex;
#GROUP BYは、次のフィールド名に従って結果をグループ化します

クエリの合計スコアはいくらですか?

select sum(result) as "total score" FROM student; 

[外部リンク画像の転送に失敗しました。ソースサイトにはアンチホットリンクメカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-BcxPQPRB-1619187251372) (8mysql_result sorting_aggregation function.assets/image-20210423221101057.png)]

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL での utf8mb4 照合の例
  • インデックススキャンを使用したMySQLソート
  • MySQL のあまり知られていないソート方法
  • Mysql 中国語ソートルールの説明
  • MySQLのデフォルトのソートルールに基づく落とし穴
  • MySQL ソートの原則とケース分析
  • MySQLクエリのソートとページング関連
  • インデックスを使用して MySQL ORDER BY ステートメントを最適化する方法
  • MySQL のソートとページング (order by と limit) と既存の落とし穴
  • MySQL ソート機能の詳細

<<:  Tomcat マルチインスタンスの展開と構成の原則

>>:  初心者向けウェブサイト構築チュートリアルの概要

推薦する

Vueのデータ応答性原則の詳細な説明

この記事は主に、Vue のレスポンシブ ソース コードを理解していない、または触れたことがない人向け...

HTML の大なり、小なり、スペース、引用符などでよく使用されるエスケープ コードのリスト。

表は以下のとおりです。 HTMLソースコード結果を表示説明する&lt; <未満記号また...

Linux Centos でスクリプトを使用して Docker をインストールする方法

Dockerの主な機能は何ですか?現在、Docker には少なくとも次のアプリケーション シナリオが...

Element+vueを使用して開始時間と終了時間の制限を実装する

この記事の例では、Element+vueを使用して開始と終了の時間制限を実装するための具体的なコード...

MySQL データベースの最適化に関する 9 つのヒント

目次1. 最も適切なフィールド属性を選択する2. フィールドをNOT NULLに設定してみる3. サ...

要素の$notifyポイントについての簡単な説明

当初の意図は、element-ui の $notify 通知をコンポーネントにカプセル化することでし...

mysql 解凍パッケージの基本インストールチュートリアル

新しいコンピューターに変更したので、すべての環境を新しいコンピューター上で設定する必要があります。ふ...

DockerコンテナでJupyterノートブックを設定する方法

Jupyter ノートブックは、主に Python コードの記述、より具体的にはディープラーニング開...

Nginx プロキシを使用してフロントエンドのクロスドメイン問題を解決する方法

序文Nginx (「エンジン エックス」と発音) は、リバース プロキシ、ロード バランサ、HTTP...

Linuxシステムにmsfをインストールするプロセスの詳細な説明

または、インストールプロセスを自分で書き留めてください。私のサーバーシステムはAliyun Linu...

ReactはExcelファイルのインポートとエクスポートを実装します

目次プレゼンテーション層ビジネスレイヤーコアプラグイン xlsx ExcelインポートExcelエク...

Dockerを使用してRedisクラスターを構築する方法

目次1. Redis Dockerベースイメージを作成する2. Redisノードイメージを作成する3...

MySQL 8.0.25 解凍版のインストールと設定方法のグラフィックチュートリアル

MySQL 8.0.25解凍版のインストールチュートリアル、参考までに具体的な内容は以下のとおりです...

Linux での GDB 入門チュートリアル

序文gdb は Linux で非常に便利なデバッグ ツールです。コマンドライン モードのデバッグ ツ...

純粋な CSS で実装された大きなドロップダウン メニューのサンプル コード

これは純粋に CSS で実装された大きなドロップダウン メニューです。この大きなメニューは、js コ...