ORACLE 查詢條件出現關鍵字:&

Robot-Blog發表於2024-08-07

SQL

select 1 from dual 
WHERE xxx IN ('AAA&SSS')

編譯器提示

原因和解決方法

在Oracle SQL查詢中,‌如果查詢條件包含特殊字元如&,‌通常需要進行轉義處理,‌以確保查詢語句能被正確解析

&在Oracle中可能被視作替換變數的一部分,‌因此直接使用時可能導致查詢出錯

為了正常查詢包含&的字串,‌你可以使用CHR(38)來替換&,‌因為CHR(38)返回的就是&字元

轉義的SQL

SELECT ASCII('&') FROM dual;
SELECT CHR(38) FROM dual;

相關文章