0

給与データを取得しようとしていますが、[PAYRATE] 列に最大値と最小値を追加して平均レートを算出する必要があります。AVG[PAYRATE] が機能しないように、表には同じ支払率の給与の複数の行を含めることができます。以下のコードを試しましたが、失敗しました。これはできますか?

(SELECT SUM((MAX(payrate))+(MIN(payrate)))
FROM    PAYCHECKS
WHERE PAYROLCD in ('01', '02') 
AND PYRLRTYP = 1 
AND EMPLOYID = A.EMPLOYID 
AND PYADNMBR = A.PYADNMBR) AS PAYRATE

集計またはサブクエリを含む式に対して集計関数を実行することはできません。

4

2 に答える 2

2

外側を取り外しますsum:

SELECT (MAX(payrate)+MIN(payrate))/2 AS PAYRATE
FROM    PAYCHECKS
WHERE PAYROLCD in ('01', '02') 
AND PYRLRTYP = 1 
AND EMPLOYID = A.EMPLOYID 
AND PYADNMBR = A.PYADNMBR

/2平均に a を追加しました。

于 2013-04-19T18:54:19.647 に答える