我试图在我的SQL查询中使用一个简单的case语句,但它似乎不起作用。这是我的疑问:
SELECT location_id, rtb_user_id, start_time, end_time, tt_no, assn_by,
assn_time, loc_id, loc_name, parent_loc_id, hr_level, userid,
firstname, lastname, pwd, email, empid, locationid, departmentid,
designationid, enabled, login_name, user_roles, cell_no,
reporting_to, theme_name, cmp_emp_id, cmp_alias, cmp_mail,
cmp_phone, v.cust_id, v.cust_mob, v.mac_addr, v.email_id,
CASE WHEN v.PROJ_ID = '10070' THEN
( 'pid='
|| v.proj_id
|| CHR (38)
|| 'issuetype='
|| v.issue_id
|| CHR (38)
|| 'customfield_10233='
|| v.cust_id
|| CHR (38)
|| 'customfield_10014='
|| v.mac_addr
|| CHR (38)
|| 'customfield_10016='
|| v.cust_mob
|| CHR (38)
|| 'reporter='
|| v.email_id) as jira_url
else
( 'pid=' || v.proj_id
|| CHR (38)|| 'issuetype='
|| v.issue_id|| CHR (38)
|| 'customfield_10004=' || v.cust_id
|| CHR (38) || 'customfield_10014='
|| v.mac_addr || CHR (38) || 'customfield_10016='
|| v.cust_mob|| CHR (38)
|| 'reporter='|| v.email_id) as jira_url
END
FROM rtb_visit_assn v, rtb_locations l, rtb_users u
WHERE v.location_id = l.loc_id
AND v.rtb_user_id = u.userid
AND l.loc_id = u.locationid);
它会出现错误,例如"错过正确的副作用"或"缺少关键字"
答案 0 :(得分:0)
您没有匹配括号,因此错误。计算(然后计算) - 他们需要匹配。