集合関数と集約関数の違い SQL

集合関数と集約関数の違い SQL

SQLの関数で、AVG,MAX,MINなどの関数は正式には集合関数ではなく集約関数といいます。

集約関数に対し、場合によっては複数行返す関数を集合関数といいます。

各DBの集約関数

PostgeSQL

https://www.postgresql.jp/document/12/html/functions-aggregate.html

MySQL

https://dev.mysql.com/doc/refman/5.6/ja/group-by-functions.html

Oracle

https://docs.oracle.com/cd/E16764_01/doc.1111/b55579/functions.htm

集約と集合

集約と集合の意味は以下の通りです。

集約の意味

[名](スル)物事を整理して、一つにまとめること。「調査結果を集約する」「反論はこの一点に集約される」

集合の意味

数学の基本概念の一。物の集まりで、個々の物がその集まりの中に属するかどうか、かつ、その集まりの中の二つの物が等しいかどうかが明確に判定できるものをいう。個々の物を元 (げん) または要素という。

PostgeSQLにはgenerate_seriesという集合関数がある

PostgreSQLにはgenerate_seriesという集合関数が存在します。

集合関数(PostgeSQL)

https://www.postgresql.jp/document/12/html/functions-srf.html

HirDB(ハイアールデービー)

HirDBのマニュアルではAVGやMAX,MINは集合関数という位置づけになっています。しかし言葉の意味からすると集約が正しい気がします。

http://itdoc.hitachi.co.jp/manuals/3020/3020645751/W4570097.HTM

参考サイト

5分でわかる!集合と要素とは?

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA