Oracle SQL:将 CHR() 函数与 ||连接和连接



下面的查询返回错误

SELECT 'mailto:'|| fscp.parameter_value || '?subject=' || wfn.subject nid_subject || chr(38)       
FROM apps.wf_notifications wfn, apps.fnd_svc_comp_param_vals_v fscp
WHERE fscp.component_id = :component_id 
AND component_parameter_id = :param
AND wfn.item_key = :itemkey; 

错误

ORA-00923:在预期位置找不到 FROM 关键字 00923.00000 - "在预期位置找不到 FROM 关键字">

当我删除 select 语句末尾的 '|| chr(38(' 时,查询运行正常。
与连接表相关的内容? 因为下面的查询也可以正常工作:

select 'Text: '||chr(39)||wfn.notification_id||chr(39) from wf_notifications wfn;

你在select中有这个:

|| wfn.subject nid_subject || 

也许你打算:

SELECT 'mailto:'|| fscp.parameter_value || '?subject=' || wfn.subject || nid_subject || chr(38)   
----------------------------------------------------------------------^ 

亚历克斯是对的。 问题的关键是它可以在没有chr(38)的情况下工作。 所以,试试这个:

SELECT ('mailto:'|| fscp.parameter_value || '?subject=' || wfn.subject || chr(38) ) as nid_subject 

请注意使用括号和as来明确定义列别名。

最新更新