MySQL クエリのソートとクエリ集計関数の使用法の分析

MySQL クエリのソートとクエリ集計関数の使用法の分析

この記事では、例を使用して、MySQL クエリのソート関数とクエリ集計関数の使用方法を説明します。ご参考までに、詳細は以下の通りです。

ソート

データを見やすくするために、データを並べ替えることができます

文法:

テーブル名から * を選択し、列 1 の asc|desc で並べ替えます [, 列 2 の asc|desc,...]

例示する

行データを列 1 で並べ替えます。一部の行と列 1 の値が同じ場合は、列 2 で並べ替えるなどします。

  • デフォルトでは、列は小さい順(昇順)に並べ替えられます。
  • asc 小さいものから大きいものへ、つまり昇順に並べる
  • desc 大きいものから小さいものへ、つまり降順で並べ替えます

例1: 削除されていない男子生徒の情報を学生IDの降順で照会する

性別=1かつis_delete=0の学生から*を選択し、IDで並べ替えます。

例 2: 削除されていない生徒の情報を名前の昇順で照会する

select * from students where is_delete=0 order by name;

例 3: すべての生徒情報を表示し、年齢順に並べ替え、年齢が同じ場合は身長順に並べ替えます。

学生から * を選択し、年齢 desc、身長 desc で並び替えます。

集計関数

統計データを素早く取得するために、次の 5 つの集計関数がよく使用されます。

合計

count(*)は行の総数を計算することを意味します。括弧内に星印と列名を書いても結果は同じです。

例1: 生徒の総数を照会する

学生からcount(*)を選択します。

最大

max(column)は、この列の最大値を見つけることを意味します。

例2: 女の子の最大数を問い合わせる

性別が2である学生からmax(id)を選択します。

最小

min(column)は、この列の最小値を見つけることを意味します。

例3: 削除されていない生徒の最小数を照会する

is_delete=0 の students から min(id) を選択します。

sum(column)は、この列の合計を求めることを意味します。

例4: 男子の合計年齢を照会する

性別が 1 である学生から合計 (年齢) を選択します。
-- 平均年齢は、性別が 1 である生徒から sum(age)/count(*) を選択します。

平均値

avg(column)は、この列の平均値を求めることを意味します。

例5: 削除されていない女の子の平均数を照会する

is_delete=0 かつ gender=2 の students から avg(id) を選択します。

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL 共通関数の概要」、「MySQL ログ操作スキル」、「MySQL トランザクション操作スキルの概要」、「MySQL ストアド プロシージャ スキル」、および「MySQL データベース ロック関連スキルの概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQL 集計関数のソート
  • MySQL グループ化クエリと集計関数
  • MySQL の集計関数 count の使用法とパフォーマンスの最適化テクニック
  • MySql の集計関数に条件式を追加する方法
  • MySQL の基本: グループ化関数、集計関数、グループ化クエリの詳細な説明

<<:  Nginx 構成 PC サイトとモバイル サイトの分離によるリダイレクトの実現

>>:  Vueはログイン認証コードを実装する

推薦する

react-virtualized を使用して、動的な高さを持つ画像の長いリストを実装する

目次開発中に発生した問題解決具体的な実装実績まとめバーチャルリストは、スクロールコンテナ要素の表示領...

WeChatアプレットの下部にあるタブバーがコンテンツをブロックする問題に対処する簡単な方法

WeChatアプレットでタブバーを設定すると、重要なコンテンツがブロックされ、iPhoneXなどの異...

CentOS 7 に PHP5 用の suPHP をインストールする方法 (Peng Ge)

デフォルトでは、CentOS 7 上の PHP は apache または nobody として実行さ...

Dockerコンテナにホストディレクトリへの書き込み権限がない場合の解決策

Docker コンテナを適用する場合、多くの場合、ホスト ディレクトリを Docker コンテナにマ...

MySQL 5.7.13 winx64 のインストールと設定方法のグラフィック チュートリアル (win10)

この記事では、参考までにMySQL 5.7.13 winx64のインストールと設定方法のグラフィック...

MySQL テーブルと列のコメントの概要

コードと同様に、テーブルや列にコメントを追加して、他のユーザーがその機能を理解できるようにすることが...

MySQLの一般的なメモリ不足による起動失敗に対する完璧な解決策

1. MySQLが正常に起動しない場合は、エラーログ/var/log/mysql/error.log...

vue-router からのフロントエンドルーティングの 2 つの実装

目次モードパラメータハッシュ履歴ハッシュ履歴.push()ハッシュ履歴.replace()アドレスバ...

Vue でデータが変更された後にビューを同期的に更新する方法

序文少し前に、興味深い問題を目にしました。Vue のデータが変更された後に、ビューを同期的に更新する...

Bootstrap 3.0 学習ノート グリッドシステム事例

序文前回の記事では、主にグリッドシステムの基本原理を学び、簡単なケースを通してその原理を実践しました...

Vueの使用に関する深い理解

目次Vueのコアコンセプトを理解するVueの双方向バインディングの原理と実装を探るVue 双方向バイ...

nginx をプロキシ キャッシュとして使用する方法

キャッシュを使用する目的は、バックエンドの負荷を軽減し、Web サイトの同時実行性を向上させることで...

MySQLはイベントを使用してスケジュールされたタスクを完了します

イベントでは、SQL コードを 1 回または一定の間隔で実行することを指定できます。通常、複雑な S...

固定、流動的、柔軟なウェブページレイアウトの長所と短所の分析

ウェブデザイナーを長い間悩ませてきた疑問があります。それは、固定レイアウト、流動的レイアウト、柔軟レ...

HTMLとXHTML、HTML4とHTML5のタグの違いについて簡単に紹介します。

HTML と XHTML の違い1. XHTML要素は正しくネストされている必要がある2. XHT...