0
當我運行下面的SQL語句出現錯誤:我有一個訪問數據庫和我已寫下面的查詢通過今天找每個員工的薪水,但我通過這個查詢
SELECT
FORMAT(emp_attendance.att_date, 'mm-yyyy') AS pd ,
emp_detail.ename ,
emp_detail.ecode ,
(SELECT COUNT(emp_attendance.att_id)
FROM emp_attendance
WHERE emp_attendance.eid = emp_detail.eid
AND emp_attendance.att_type = 'Full Day'
AND FORMAT(emp_attendance.att_date, 'mm-yyyy') = FORMAT(emp_attendance.att_date,
'mm-yyyy')
) AS Present_Days ,
(SELECT COUNT(emp_attendance.att_id)
FROM emp_attendance
WHERE emp_attendance.eid = emp_detail.eid
AND emp_attendance.att_type = 'Half Day'
AND FORMAT(emp_attendance.att_date, 'mm-yyyy') = FORMAT(emp_attendance.att_date,
'mm-yyyy')
) AS Half_Days ,
ROUND((emp_detail.esalary/30)
* ((SELECT COUNT(emp_attendance.att_id)
FROM emp_attendance
WHERE emp_attendance.eid = emp_detail.eid
AND emp_attendance.att_type = 'Full Day'
AND FORMAT(emp_attendance.att_date, 'mm-yyyy') = FORMAT(emp_attendance.att_date,
'mm-yyyy')
)
+ ((SELECT COUNT(emp_attendance.att_id)
FROM emp_attendance
WHERE emp_attendance.eid = emp_detail.eid
AND emp_attendance.att_type = 'Half Day'
AND FORMAT(emp_attendance.att_date, 'mm-yyyy') = FORMAT(emp_attendance.att_date,
'mm-yyyy')
)/2)), 2) AS Eligable_Salary
FROM
emp_attendance
INNER JOIN emp_detail ON emp_attendance.eid = emp_detail.eid
GROUP BY
FORMAT(emp_attendance.att_date, 'mm-yyyy') ,
emp_detail.eid ,
emp_detail.ename ,
emp_detail.ecode ,
Eligable_Salary
HAVING
FORMAT(emp_attendance.att_date, 'mm-yyyy') = '11-2016'
...我收到以下錯誤:
You tried to execute a query that does not include the specified expression 'ROUND(emp_detail.esalary/30*(+/2),2)' as part of an aggregate function.
https://stackoverflow.com/editing-help(馬克碼,然後點擊'{}',標記錯誤信息並點擊'「 '。在需要的地方添加換行符。) – jarlh