SQL で行の最大値または最小値を取得する方法

SQL で行の最大値または最小値を取得する方法

元データと対象データ

SQL文を実装する(最大)

選択
店、
月、
最大(dz,fz,sp) が最大値となる
から
テーブル名;

SQL ステートメントを実装する (最低限)

選択
店、
月、
最小 (dz,fz,sp) を min として
から
テーブル名;

補足: SQL Server で行内の複数の列の最大値を取得する 3 つの方法

テーブル内の複数の列から最大値を取得する必要がある場合があります (これらの列は同じデータ型を持ち、レコードの各行に最大値が必要です)。以下に3つの方法を説明します。一緒に見ていきましょう。

まず、次のようにテーブルを作成し、必要なレコードをテーブルに挿入します。

テーブルデモの作成(
 Guid varchar(50) NULLでないデフォルトnewid()主キー、
 Date1 日付時刻 null、
 Date2 日付時刻 null、
 Date3 日付時刻 null
)

次に、テストデータをテーブルに挿入します

Demo(Date1,Date2,Date3)の値を挿入する
('2016-9-5'、'2016-8-6'、'2016-10-9')、
('2015-5-6'、'2015-8-6'、'2015-6-3')、
('2016-10-6'、'2015-6-6'、'2016-9-6')

デモから*を選択

上記に記録された各行の 3 つの日付列の最大値を取得する必要があります。

方法1(高効率):

Guid を選択し、(Select Max(NewDate) from (values ​​(Date1),(Date2),(Date3)) as #temp(NewDate)) as MaxDate from Demo

方法2(高効率):

Demo から MaxDate として Guid、max(NewDate) を選択し、(Date1,Date2,Date3) の DateVal の NewDate を u として unpivot し、Guid でグループ化します。

方法 3 (効率が低いため、推奨されません):

Guid を選択し、(select max(NewDate) as MaxDate from (select Demo.Date1 as NewDate union select Demo.Date2 union select Demo.Date3)ud) MaxDate from Demo

最初の方法は、values 句を使用して、各データ行を 1 つのフィールドのみを持つテーブルに構築し、最大値を見つけるという非常に賢い方法です。

2 番目の方法では、行から列への変換によく使用される UNPIVOT キーワードを使用して変換してから表示します。

3 番目の方法は最初の方法と似ていますが、union を使用して 3 つの UpdateByAppDate フィールドを 1 つのフィールドのみを含む結果セットに結合し、最大値を見つけます。

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • SQLはSQL Server接続とクエリステートメントの最大数を設定します
  • Mysql で ID の最大値、テーブル内のレコードの総数、その他の関連する問題を取得するための方法の概要
  • MySQL でグループ化した後、各グループの最大値を取得する詳細な例

<<:  HTML テーブルタグチュートリアル (11): 水平方向の配置属性 ALIGN

>>:  Docker Nginxコンテナの制作と展開の実装方法

推薦する

CSS コード省略 div+css レイアウト コード省略仕様

略語を使用すると、CSS ファイルのサイズが小さくなり、読みやすくなります。 CSS 省略形の主なル...

Mysqlの自動増分IDについて知らないことがあるかもしれません

導入: MySQL を使用してテーブルを作成する場合、通常は自動インクリメント フィールド (AUT...

MySql8.0.19 インストールピットレコードを共有する

前回の記事ではMySql8.0.19のインストール手順を紹介しました。必要な方はクリックしてご覧くだ...

MySQL8 ベースの docker-compose デプロイメント プロジェクトの実装

1. まず、次のパスに従って対応するフォルダを作成します。 ローカルのdockerでmysqlを実行...

フロントエンド開発に必要な共通ツール機能のまとめ

1. 時刻の書式設定とその他の方法moment.jsライブラリファイルの使用をお勧めします2. テン...

PXEを使用してCentOS7.6を自動的にインストールする方法の詳細なチュートリアル

1. 需要ベースには 300 台の新しいサーバーがあり、CentOS7.6 オペレーティング システ...

Nginx でバージョン番号と Web ページのキャッシュ時間を非表示にする方法

Nginx の最適化 - バージョン番号と Web ページのキャッシュ時間を非表示にするバージョン番...

CSS設定div背景画像実装コード

コンポーネントに背景画像コントロールを追加するには、次の 2 つの手順だけが必要です。 <表示...

Nginx サーバーが Systemd カスタム サービス プロセス分析を追加

1. nginxを例に挙げるyumコマンドを使用してNginxをインストールしましたSystemd ...

インデックスを使用して MySQL ORDER BY ステートメントを最適化する方法

テーブルの作成とインデックスの作成 テーブルtbl1を作成( id int ユニーク、sname v...

JavaScriptはマウスの動きに追従するボックスを実装します

この記事では、マウスの動きを追跡するためのJavaScriptの具体的なコードを参考までに紹介します...

Vue モバイル プロジェクトでページ キャッシュを実装する方法のサンプル コード

背景モバイル デバイスでは、ページ ジャンプ間のキャッシュが必須要件です。例: ホームページ =&g...

Dockerイメージ内のファイルを表示する方法

Dockerイメージ内のファイルを表示する方法1. すでに実行中の場合すでに実行中のイメージについて...

Linux rpm および yum コマンドとその使用法の詳細な説明

RPM パッケージ管理インターネット ダウンロード パッケージのパッケージ化およびインストール ツー...