OCP 1Z0 051 QUESTION NO: 4

QUESTION NO: 4 
See the Exhibit and examine the structure and data in the INVOICE table:
  
Exhibit: 

Which two SQL statements would executes successfully? (Choose two.)
 
 
A. SELECT MAX(inv_date),MIN(cust_id) FROM invoice; 
B. SELECT MAX(AVG(SYSDATE - inv_date)) FROM invoice; 
C. SELECT AVG(inv_date) FROM invoice; 
D. SELECT AVG(inv_date - SYSDATE),AVG(inv_amt) FROM invoice; 

A D 没错,对所有数据聚合。date不能取平均值,但inv_date - sysdate的结果是number,所以可以用avg
TEST > SELECT MAX(inv_date),MIN(cust_id) FROM invoice;
MAX(INV_DATE) MIN(CUST_ID)
------------- ------------
2007-10-01    A1Q
1 row selected

TEST > SELECT AVG(inv_date - SYSDATE),AVG(inv_amt) FROM invoice;
AVG(INV_DATE-SYSDATE) AVG(INV_AMT)
--------------------- ------------
    -2578.36114583333         2000
1 row selected

B 同一级别,聚合函数不参嵌套
TEST > SELECT MAX(AVG(SYSDATE - inv_date)) FROM invoice;
SELECT MAX(AVG(SYSDATE - inv_date)) FROM invoice
ORA-00978: nested group function without GROUP BY

TEST > SELECT MAX(AVG(SYSDATE - inv_date)) FROM invoice group by cust_id;
MAX(AVG(SYSDATE-INV_DATE))
--------------------------
          2678.69530092593
1 row selected

C date不能取平均值,只有数字可以取平均值
TEST > SELECT AVG(inv_date) FROM invoice;
SELECT AVG(inv_date) FROM invoice
ORA-00932: inconsistent datatypes: expected NUMBER got DATE

Answer: A,D
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值