日期:2014-05-17  浏览次数:21000 次

oracle ||,'操作符详解
比如如下拼接的sql语句。
vs_where_sql :='and t.subject='''||pSubject||''' || 'and t.ip_address in ('||'''||iIP||'''||') order by t.trace_id desc ) x where rownum<='||pRowCount;
还有:
vs_where_sql := 't.subject in (''DataUploadResponse'',''JsonObjectResponse'', ''GetCertificateData'', ''DataUpload'', ''DataUploadRequest'', ''GetServerTime'') and t.ip_address in ('||'''||pIP||'''||') order by t.trace_id desc ) x where rownum<='||pRowCount;
请高手详解一下。谢谢。

------解决方案--------------------
DBMS_OUTPUT.PUT_LINE(vs_where_sql );
看一下结果就明白了
------解决方案--------------------
SQL code

SQL> SELECT 'A'||'B' FROM DUAL;
 
'A'||'B'
--------
AB
 
SQL> SELECT '''A'||'B' FROM DUAL;
 
'''A'||'B'
----------
'AB

SQL> SELECT '''A'''||'B' FROM DUAL;
 
'''A'''||'B'
------------
'A'B
 
SQL> SELECT '''||A'||'B' FROM DUAL;
 
'''||A'||'B'
------------
'||AB
 
SQL> SELECT '''||A'||'B||' FROM DUAL;
 
'''||A'||'B||'
--------------
'||AB||