Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle 计算平均速率之间的差异_Oracle - Fatal编程技术网

Oracle 计算平均速率之间的差异

Oracle 计算平均速率之间的差异,oracle,Oracle,我需要找出过去12个月员工表和非员工表的平均比率之间的差异 以下是我到目前为止的情况: select person.pid, person.firstname, person.lastname, AVG(RATING_RECORD.RATE) from person, client, staff, policy, COVERAGE, RATING_RECORD where person.

我需要找出过去12个月
员工
表和非
员工
表的平均比率之间的差异

以下是我到目前为止的情况:

select  person.pid, 
        person.firstname, 
        person.lastname,
        AVG(RATING_RECORD.RATE)
from person, 
     client, 
     staff, 
     policy,
     COVERAGE,
     RATING_RECORD
where person.PID = client.PID  and  
      staff.pid = person.pid and 
      policy.SID =staff.SID and 
      COVERAGE.PNO = policy.PNO and
      COVERAGE.COID = RATING_RECORD.COID;
现在我来谈谈这个问题

select  person.pid,
    person.FIRSTNAME,
    AVG(RATING_RECORD.RATE)
from person 
    join client on person.pid = client.pid 
    join staff on person.pid = staff.pid  
    join policy on staff.sid = policy.sid
    join coverage on policy.PNO = coverage.PNO
    join RATING_RECORD on coverage.COID = RATING_RECORD.COID
where policy.EXPIRYDATE between '12-NOV-13' and '12-nov-14 '
group by person.PID, person.FIRSTNAME;
但问题是它只显示了3个结果,而不是整个列表

离开我的评论,我带着客户加入进来,提出了 13结果

select  person.pid,
person.FIRSTNAME,
AVG(RATING_RECORD.RATE)
from person 

join staff on person.pid = staff.pid  
join policy on staff.sid = policy.sid
join coverage on policy.PNO = coverage.PNO
join RATING_RECORD on coverage.COID = RATING_RECORD.COID

where policy.EXPIRYDATE between '12-NOV-13' and '12-nov-14 '
group by person.PID, person.FIRSTNAME;

但是我如何让客户返回给我员工和非员工?

请您更明确地定义员工和非员工。谢谢,我不知道你所说的定义是什么意思?你想显示哪些列?数据库如何表示一个人是员工还是非员工?例如,一个人可以既是员工又是客户吗?目前,您的查询将只返回那些
PID
s在
STAFF
CLIENT
表中都找到的人。哦,对了,我现在更明白了,我想同时显示员工和非员工,如果他们都在,请显示两次