0

ねえ、私がこれを正しく行っているかどうか確認してくれませんか? 私はこの質問に行き詰まっています:

すべてのジョブの平均ジョブ コストよりも高い平均ジョブ コストを持つすべての会計士の会計士名とその平均ジョブ コスト (小数点以下第 2 位に四捨五入) を表示するクエリを作成します。

SELECT 
  a.name + a.surname, 
  SUM(jt.cost * (DATEDIFF(mi, time_complete, time_start))) % SUM(job_id) AS average_job_cost
FROM accountant AS a 
LEFT OUTER JOIN job AS j ON a.staff_id = j.staff_id 
LEFT OUTER JOIN job_type AS jt ON jt.job_type_id = j.job_type_id
WHERE average_job_cost > (SELECT SUM(jt.cost * (DATEDIFF(mi, time_complete, time_start))) % SUM(job_id);
4

1 に答える 1

0

このようなもの(他の質問で見つかったclient_idを使用するようにオリジナルから編集)

WITH jobinfo as
(
   SELECT j.client_id, AVG(jt.cost * (DATEDIFF(mi, timecomplete, timestart))) as avgerage
   FROM job as j
   JOIN job_type as jt ON j.jobtype_id = jt.jobtype_id
   GROUP BY j.client_id
), avgAll AS
(
   SELECT AVG(average) as aall
   FROM jobinfo
)
SELECT 
  c.client_id,
  c.name + c.surname, 
  c.phone, 
  c.email_address, 
  j.avgerage
FROM client as c 
JOIN jobinfo j ON c.client_id= j.client_id
WHERE j.avgerage > (SELECT aall FROM avgALL)
ORDER BY j.avgerage DESC
于 2013-11-03T17:00:34.663 に答える