Oracle SQL:将CHR()函数与||一起使用连接和连接

时间:2017-03-20 20:02:45

标签: sql oracle

以下查询返回错误

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关键字”

当我删除'||时chr(38)'在select语句的末尾,查询运行正常 与加入表有关的东西?因为以下查询也可以正常工作:

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

1 个答案:

答案 0 :(得分:2)

你在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来明确定义列别名。