Ⅲ.sql函数

2020-02-27  本文已影响0人  唐騦忆

1.AVG()

返回数值列的平均值

SELECT AVG(column_name) FROM table_name;

2.COUNT()

返回指定列的值的数目(NULL 不计入)

SELECT COUNT(column_name) FROM table_name;
SELECT COUNT(*) FROM table_name;

返回指定列的不同值的数目
SELECT COUNT(DISTINCT column_name) FROM table_name;

指定条件并重命名
SELECT COUNT(count) AS nums FROM access_log
WHERE site_id=3;

3.FIRST()

返回指定的列中第一个记录的值。
mysql 使用limit 1

4.LAST()

返回指定的列中最后一个记录的值。
mysql 使用order by ... desc + limit 1;

5.MAX() / MIN()

返回指定列的最大/小值。

SELECT MAX(column_name) FROM table_name;

6.SUM()

返回数值列的总数。

SELECT SUM(column_name) FROM table_name;

7.group by

用于结合聚合函数,根据一个或多个列对结果集进行分组。

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

SELECT site_id, SUM(access_log.count) AS nums
FROM access_log GROUP BY site_id;

8.having

having在函数中=dml语句的where

SELECT Websites.name, Websites.url, SUM(access_log.count) AS nums FROM (access_log
INNER JOIN Websites
ON access_log.site_id=Websites.id)
GROUP BY Websites.name
HAVING SUM(access_log.count) > 200;

9.ucase()

把字段的值转换为大写。

10.lcase()

把字段的值转换为小写。

11.mid()

从文本字段中提取字符。

SELECT MID(column_name,start[,length]) FROM table_name;

12.len()

返回文本字段中值的长度。

SELECT LENGTH(column_name) FROM table_name;

13.round()

把数值字段舍入为指定的小数位数。

SELECT ROUND(column_name,decimals) FROM table_name;
SELECT ROUND(X(,x));
四舍五入取值(保留指定位数)。

14.now()

返回当前系统的日期和时间。

SELECT NOW() ;
SELECT name, url, Now() AS date
FROM Websites;

15.format()

对字段的显示进行格式化

SELECT FORMAT(column_name,format) FROM table_name;
SELECT name, url, DATE_FORMAT(Now(),'%Y-%m-%d') AS date
FROM Websites;

上一篇下一篇

猜你喜欢

热点阅读