SQL函数简要整理

1、合计函数(Aggregate function)
AVG(): 返回数值列的平均值。NULL 值不包括在计算中
SELECT AVG(column_name) FROM table_name
eg: SELECT Customer FROM Orders WHERE OrderPrice>(SELECT AVG(OrderPrice) FROM Orders)
COUNT(): 函数返回匹配指定条件的行数
COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):
SELECT COUNT(column_name) FROM table_name
eg: SELECT COUNT(Customer) AS CustomerNilsen FROM Orders WHERE Customer=‘Carter’

COUNT(*) 函数返回表中的记录数:
SELECT COUNT(*) FROM table_name
eg: SELECT COUNT(*) AS NumberOfOrders FROM Orders
COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:
SELECT COUNT(DISTINCT column_name) FROM table_name

eg: SELECT COUNT(DISTINCT Customer) AS NumberOfCustomers FROM Orders

FIRST() 函数返回指定的字段中第一个记录的值。(可使用 ORDER BY 语句对记录进行排序)
SELECT FIRST(column_name) FROM table_name
eg: SELECT FIRST(OrderPrice) AS FirstOrderPrice FROM Orders

LAST() 函数返回指定的字段中最后一个记录的值。(可使用 ORDER BY 语句对记录进行排序)
SELECT LAST(column_name) FROM table_name

eg: SELECT LAST(OrderPrice) AS LastOrderPrice FROM Orders

MAX() 函数返回一列中的最大值。NULL 值不包括在计算中,MIN 和 MAX 也可用于文本列,以获得按字母顺序排列的最高或最低值
SELECT MAX(column_name) FROM table_name
eg: SELECT MAX(OrderPrice) AS LargestOrderPrice FROM Orders

MIN() 函数返回一列中的最小值。NULL 值不包括在计算中
SELECT MIN(column_name) FROM table_name**
eg: SELECT MIN(OrderPrice) AS SmallestOrderPrice FROM Orders

SUM() 函数返回数值列的总数(总额)
SELECT SUM(column_name) FROM table_name
eg: SELECT SUM(OrderPrice) AS OrderTotal FROM Orders

合计函数 (比如 SUM) 常常需要添加 GROUP BY 语句,GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name

eg:SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer

在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value

eg:SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer HAVING SUM(OrderPrice) 2000

UCASE() 函数把字段的值转换为大写
SELECT UCASE(column_name) FROM table_name

eg: SELECT UCASE(LastName) as LastName,FirstName FROM Persons

LCASE() 函数把字段的值转换为小写
SELECT LCASE(column_name) FROM table_name

eg: SELECT LCASE(LastName) as LastName,FirstName FROM Persons

MID() 函数用于从文本字段中提取字符
SELECT MID(column_name,start[,length]) FROM table_name

ps: start规定起始位置(从1开始);length可选,要返回的字符数。如果省略,则 MID() 函数返回剩余文本
eg: SELECT MID(City,1,3) as SmallCity FROM Persons

LEN() 函数返回文本字段中值的长度
SELECT LEN(column_name) FROM table_name

eg: SELECT LEN(City) as LengthOfCity FROM Persons

ROUND() 函数用于把数值字段舍入为指定的小数位数
SELECT ROUND(column_name,decimals) FROM table_name,ps: decimals规定要返回的小数位数。

eg: SELECT ProductName, ROUND(UnitPrice,0) as UnitPrice FROM Products

NOW() 函数返回当前的日期和时间
SELECT NOW() FROM table_name

eg: ELECT ProductName, UnitPrice, Now() as PerDate FROM Products

FORMAT() 函数用于对字段的显示进行格式化
SELECT FORMAT(column_name,format) FROM table_name

eg: SELECT ProductName, UnitPrice, FORMAT(Now(),‘YYYY-MM-DD’) as PerDate
FROM Products

猜你喜欢

转载自blog.csdn.net/weixin_44454733/article/details/86626675