次のようなクエリがあります。
SELECT
app.application_id,
j.job_number,
j.job_id,
j.job_title,
j.job_city,
j.job_state,
p.person_id AS candidate_id,
p.first_name,
p.last_name,
app.start_date,
ope1.percent_complete,
MAX(CASE
WHEN r.role_display_name = 'ENG - Recruiter' THEN
(SELECT CASE WHEN COUNT(last_name) = 0 THEN
'Unassigned'
ELSE
COUNT(last_name)
END AS uname
FROM users
JOIN job_roles ON job_roles.user_id = users.user_id
WHERE job_id = j.job_id
AND role_id = r.role_id
)
ELSE '' END) AS role_3
私の問題は、COUNT(last_name)
レコードが返されないため 0 が返されないため、 の値がないことですNULL
。すべてが理にかなっていますが、 でラップしようとしましたIFNULL()
が、ISNULL()
どれもこの問題を解決していないようです。レコードがない場合に 0 を返すようにするにはどうすればよいですか? 集計内に別のサブクエリが必要ですか? COUNT()
私は本当に別のサブクエリを使用したくない....