SQL的常见函数的使用方法和举例说明

  1. AVG 返回指定组中的平均值,空值被忽略。
  例:select avg(l.order_id) from pop_trade.pop_order l where l.member_id=212314 ;
  1. COUNT 返回统计数量个数。
 例:select count(l.order_id) from pop_trade.pop_order l where l.id=212314 ;
  1. MAX 返回指定数据的最大值。
 例:select max(l.order_id) from pop_trade.pop_order l where l.id=212314 ;
  1. MIN 返回指定数据的最小值。
例:select min(l.order_id) from pop_trade.pop_order l where l.id=212314 ;
  1. SUM 返回指定数据的和,只能用于数字列,空值被忽略。
 例:select round( sum( l.pre_balance-l.balance),2) from asd.account l where l.id=62990;
  1. COUNT_BIG count_big()返回指定组中的项目数量。与count()函数区别:count_big()返回bigint值,而count()返回的是int值。
 例:select count_big(prd_no) from sales
  1. GROUPING 产生一个附加的列,当用CUBE或ROLLUP运算符添加行时,输出值为1.当所添加的行不是由CUBE或ROLLUP产生时,输出值为0.
   例:select  prd_no,sum(qty),grouping(prd_no) from sales group by prd_no with rollup
  1. BINARY_CHECKSUM 返回对表中的行或表达式列表计算的二进制校验值,用于检测表中行的更改。
  例:select  prd_no,binary_checksum(qty) from sales group by prd_no
  1. CHECKSUM_AGG 返回指定数据的校验值,空值被忽略。
  例:select  prd_no,checksum_agg(binary_checksum(*)) from sales group by prd_no
  1. CHECKSUM 返回在表的行上或在表达式列表上计算的校验值,用于生成哈希索引。

  2. STDEV 返回给定表达式中所有值的统计标准偏差。

  例:select  stdev(prd_no) from sales
  1. STDEVP 返回给定表达式中的所有值的填充统计标准偏差。
 例:select  stdevp(prd_no) from sales
  1. VAR 返回给定表达式中所有值的统计方差。
 例:select  var(prd_no) from sales
  1. VARP 返回给定表达式中所有值的填充的统计方差。
例:select  varp(prd_no) from sales

15.综合查询

例:select sum(age)/count(age) as '平均值' from student;

16.GROUP BY语句,GROUP BY语句用来与聚合函数(aggregate functions such as COUNT, SUM, AVG, MIN, or MAX.)联合使用来得到一个或多个列的结果集。

SELECT column1, column2, ... column_n, aggregate_function (expression)            
FROM tables            
WHERE predicates            
GROUP BY column1, column2, ... column_n;

17.HAVING语句
  HAVING语句通常与GROUP BY语句联合使用,用来过滤由GROUP BY语句返回的记录集。
  HAVING语句的存在弥补了WHERE关键字不能与聚合函数联合使用的不足。

SELECT column1, column2, ... column_n, aggregate_function (expression)
FROM tables
WHERE predicates
GROUP BY column1, column2, ... column_n
HAVING condition1 ... condition_n;

**-- 查询平均分高于80分的学生记录可以这样写:
SELECT id, COUNT(course) as numcourse, AVG(score) as avgscore
FROM student
GROUP BY id
HAVING AVG(score)>=80;**
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值