このページは AI の支援を受けて英語から翻訳されています。内容が異なる場合は英語版が正となります。
MIN
列の入力または列のグループに基づいて最小値を返します。
関連項目:
[SELECT]
構文
/* aggregate function */
SELECT MIN(columnExpression) FROM <multipartIdentifier>
[ GROUP BY groupByColumn ];
/* scalar (multi-argument) function */
SELECT MIN(scalarExpression1, scalarExpressionN, ...) FROM <multipartIdentifier>;
引数
集約関数
columnExpression
オペランド(+、-、...)を含む列または式。
MIN関数は、列のデータ型に基づいて、指定された列の最小値を返します。たとえば、整数の列に対するMIN操作は、その列または列のグループの最小の整数を返します。一方、文字列の列または列のグループに対するMIN操作は、最小の ASCII 値を返します(一般に、逆辞書順で並べ替えたときの最初の値ですが、いくつかの違いがあります)。
groupByColumn
要約操作または集約操作の対象となる 1 つ以上の列。GROUP BY 句は、列のグループごとに 1 行を返します。
MIN関数はNULL値を無視します。
グループ内のすべての値が
NULLの場合、MIN関数はNULLを返します。
スカラー関数
scalarExpression
最小値を決定して返す対象となる列または式のリスト(2 つ以上)。
いずれかの引数が
NULLの場合、スカラーMIN関数はNULLを返します。
スカラー(複数引数)の
MIN関数は、照合関数を定義する引数を左から右へ検索し、その照合関数をすべての文字列比較に使用します。
スカラー
MIN関数のどの引数も照合関数を定義していない場合は、BINARY照合関数が使用されます。
引数が 1 つだけ指定された場合は、
MIN集約関数が呼び出されます。
戻り値
入力のデータ型(またはグループ)に基づいて最小値を返します。
例
列の最小値を返す
SELECT name, location, min(timeCreated)
FROM google.storage.buckets WHERE project = 'stackql';
列の値ごとに最小値を返す
SELECT name, location,
min(round(julianday('now')-julianday(timeCreated))) as age
FROM google.storage.buckets WHERE project = 'stackql'
GROUP BY location;
スカラー min 関数を使用して値のリストから最小値を返す
SELECT min(json_extract(disks, '$[0].diskSizeGb'),json_extract(disks, '$[1].diskSizeGb')) as smallest_disk
FROM google.compute.instances
WHERE project = 'stackql-demo'
AND zone = 'australia-southeast1-a';
MIN をウィンドウ関数として使用してパーティション内の最小値を求める
-- Find the earliest issue in each state
SELECT
number,
title,
state,
created_at,
MIN(created_at) OVER (PARTITION BY state) as earliest_in_state
FROM github.issues.issues
WHERE owner = 'stackql'
AND repo = 'stackql'
ORDER BY state, created_at;
詳細については、https://www.sqlite.org/lang_aggfunc.html#min_agg または https://www.sqlite.org/lang_corefunc.html#min_scalar を参照してください。