SQL 中的 MIN 和 MAX 以及常见函数详解及示例演示

小万哥
• 阅读 264

SQL MIN() 和 MAX() 函数

SQL中的MIN()函数和MAX()函数用于查找所选列的最小值和最大值,分别。以下是它们的用法和示例:

MIN() 函数

MIN()函数返回所选列的最小值。

示例:

查找Products表中的最低价格:

SELECT MIN(Price)
FROM Products;

MAX() 函数

MAX()函数返回所选列的最大值。

示例:

查找Products表中的最高价格:

SELECT MAX(Price)
FROM Products;

语法

MIN()和MAX()函数的一般语法如下:

SELECT MIN(column_name)
FROM table_name
WHERE condition;

SELECT MAX(column_name)
FROM table_name
WHERE condition;

演示数据库

以下是示例中使用的Products表的一部分:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 - 12 oz bottles 19
3 Aniseed Syrup 1 2 12 - 550 ml bottles 10
4 Chef Anton's Cajun Seasoning 2 2 48 - 6 oz jars 22
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35

设置列名(别名)

当使用MIN()或MAX()函数时,返回的列默认将命名为MIN(field)或MAX(field)。要为列指定新名称,请使用AS关键字:

示例:

SELECT MIN(Price) AS SmallestPrice
FROM Products;

这将返回名为"SmallestPrice"的列,其中包含Products表中的最低价格。

SQL COUNT() 函数

SQL中的COUNT()函数用于返回符合指定条件的行数,通常用于统计行的数量。以下是它的用法和示例:

示例

查找Products表中的产品总数:

SELECT COUNT(*)
FROM Products;

语法

COUNT()函数的一般语法如下:

SELECT COUNT(column_name)
FROM table_name
WHERE condition;

演示数据库

以下是示例中使用的Products表的一部分:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 - 12 oz bottles 19
3 Aniseed Syrup 1 2 12 - 550 ml bottles 10
4 Chef Anton's Cajun Seasoning 2 2 48 - 6 oz jars 22
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35

添加 WHERE 子句

您可以添加WHERE子句以指定条件:

示例

查找价格高于 20 的产品数量:

SELECT COUNT(ProductID)
FROM Products
WHERE Price > 20;

指定列名

您可以指定列名而不是使用星号(*)。

如果指定列名,将不会计算NULL值。

示例

查找ProductName不为NULL的产品数量:

SELECT COUNT(ProductName)
FROM Products;

如果表中包含NULL值,您可以使用IS NOT NULL条件来排除NULL值。例如:

SELECT COUNT(ProductName)
FROM Products
WHERE ProductName IS NOT NULL;

忽略重复项

您可以使用COUNT函数中的DISTINCT关键字来忽略重复项。

如果指定DISTINCT,具有相同值的行将被计为一行。

示例

Products表中有多少不同的价格:

SELECT COUNT(DISTINCT Price)
FROM Products;

使用别名

您可以使用AS关键字为计数列指定别名。

示例

将计数列命名为 "记录数":

SELECT COUNT(*) AS "记录数"
FROM Products;

使用别名可以使结果集的列名更具可读性。

SQL SUM() 函数

SQL中的SUM()函数用于返回数值列的总和,通常用于计算某一列的总值。以下是它的用法和示例:

示例

返回OrderDetails表中所有Quantity字段的总和:

SELECT SUM(Quantity)
FROM OrderDetails;

语法

SUM()函数的一般语法如下:

SELECT SUM(column_name)
FROM table_name
WHERE condition;

演示数据库

以下是示例中使用的OrderDetails表的一部分:

OrderDetailID OrderID ProductID Quantity
1 10248 11 12
2 10248 42 10
3 10248 72 5
4 10249 14 9
5 10249 51 40

添加 WHERE 子句

您可以添加WHERE子句以指定条件:

示例

返回具有ProductID为11的产品所生成的订单数量:

SELECT SUM(Quantity)
FROM OrderDetails
WHERE ProductID = 11;

使用别名

您可以使用AS关键字为总结列指定别名。

示例

将列命名为 "总计":

SELECT SUM(Quantity) AS total
FROM OrderDetails;

使用别名可以使结果集的列名更具可读性。

使用表达式的 SUM()

SUM()函数内的参数也可以是一个表达式。

如果我们假设OrderDetails列中的每个产品价格为10美元,我们可以通过将每个数量乘以10来找到以美元计算的总收入:

示例

SUM()括号内使用表达式:

SELECT SUM(Quantity * 10)
FROM OrderDetails;

我们还可以将OrderDetails表与Products表连接以找到实际金额,而不是假定为10美元:

示例

OrderDetailsProducts连接,并使用SUM()查找总金额:

SELECT SUM(Price * Quantity)
FROM OrderDetails
LEFT JOIN Products ON OrderDetails.ProductID = Products.ProductID;

SQL AVG() 函数

SQL中的AVG()函数用于返回数值列的平均值。通常,它用于计算某一列的平均值。以下是AVG()函数的用法和示例:

示例

查找所有产品的平均价格:

SELECT AVG(Price)
FROM Products;

语法

AVG()函数的一般语法如下:

SELECT AVG(column_name)
FROM table_name
WHERE condition;

演示数据库

以下是示例中使用的Products表的一部分:

ProductID ProductName SupplierID CategoryID Unit Price
1 Chais 1 1 10 boxes x 20 bags 18
2 Chang 1 1 24 - 12 oz bottles 19
3 Aniseed Syrup 1 2 12 - 550 ml bottles 10
4 Chef Anton's Cajun Seasoning 2 2 48 - 6 oz jars 22
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35

添加 WHERE 子句

您可以添加WHERE子句以指定条件:

示例

返回类别1中产品的平均价格:

SELECT AVG(Price)
FROM Products
WHERE CategoryID = 1;

使用别名

您可以使用AS关键字为平均列指定别名。

示例

将列命名为 "平均价格":

SELECT AVG(Price) AS [平均价格]
FROM Products;

高于平均价格

要列出所有价格高于平均价格的记录,我们可以在子查询中使用AVG()函数:

示例

返回价格高于平均价格的所有产品:

SELECT * FROM Products
WHERE Price > (SELECT AVG(Price) FROM Products);

这将返回所有价格高于平均价格的产品。

最后

为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。

看完如果觉得有帮助,欢迎点赞、收藏关注

SQL 中的 MIN 和 MAX 以及常见函数详解及示例演示

点赞
收藏
评论区
推荐文章
桃浪十七丶 桃浪十七丶
3年前
C++写一个简单排序算法
分析算法步骤:1、暂定元素排列第0个为最小值,下标为min;2、然后从左往右依次扫描,与min的关键字比较,若比min的更小,则更新min下标为当前下标;3、并且把先前的最小值与当前找到目标的元素交换位置。cinclude<iostreamusingnamespacestd;voidSwap(int&a,int&b)inttem
Wesley13 Wesley13
3年前
oracle中的greatest 函数和 least函数
oracle中的greatest函数和least函数原文地址:https://blog.csdn.net/sinat\_32023305/article/details/78778596greatest(max(one),max(two),max(three))求多列的最大
Stella981 Stella981
3年前
LNMP环境下Nginx、PHP、MySQL优化
修改/usr/local/php/etc/phpfpm.confPHP5.2调整:max\_children的值PHP5.3以上版本调整:pm.min\_spare\_servers和pm.max\_spare\_servers的值适当增加最大值可以按内存xxMB/2/20的整数来算,最小值可以按内存/2/40的整数来算,可以少点或多大。如果
Stella981 Stella981
3年前
JavaScript大全
常用函数RGB像素的限定函数letclampnumMath.max(Math.min(num,255),0)https://my.oschina.net/u/4470803/blog/4471403TypeArrayJS的类型数组大体可分为3类:无符号整数、有符号整数、浮点数分
Stella981 Stella981
3年前
Javascript获取数组中最大和最小值方法
1.使用Math中的max/min方法vararr22,13,6,55,30;varmaxMath.max.apply(null,arr);varminMath.min.apply(null,arr);console.log(max,min)//5
Stella981 Stella981
3年前
Python小白学习之路(十六)—【内置函数一】
!(https://oscimg.oschina.net/oscnet/61c592e1eb0a628eb4f9d11e7d46eec8b3d.png)将68个内置函数按照其功能分为了10类,分别是:数学运算(7个)abs()   divmod()   max()   min()   pow()   r
Wesley13 Wesley13
3年前
Oracle 行列转换函数pivot、unpivot的使用(二)
一、行转列pivot关键函数pivot,其用法如下pivot(聚合函数for列名in(类型))select\fromtable\_namepivot(max(column\_name)                           行转列后的列的值value,聚合函数是必须要有的                  
小万哥 小万哥
1年前
Python 数学函数和 math 模块指南
Python提供了一组内置的数学函数,包括一个广泛的数学模块,可以让您对数字执行数学任务。内置数学函数。min()和max()函数可用于在可迭代对象中查找最低或最高值:示例:查找可迭代对象中的最低或最高值:pythonxmin(5,10,25)ymax(5
小万哥 小万哥
9个月前
Java 数学运算与条件语句全解析
JavaMathJava的Math类拥有许多方法,允许您在数字上执行数学任务。常用方法:Math.max(x,y):找到x和y的最大值Math.min(x,y):找到x和y的最小值Math.sqrt(x):返回x的平方根Math.abs(x):返回x的绝对
小万哥 小万哥
7个月前
C++ 数学函数、头文件及布尔类型详解
C数学C有许多函数可以让您在数字上执行数学任务。最大值和最小值max(x,y)函数可用于找到x和y的最大值:示例cppcout<<max(5,10);而min(x,y)函数可用于找到x和y的最小值:示例cppcout<<min(5,10);C头