我正在运行像这样的SQL(Oracle)语句
select * from table
where table_id in ('265&310', '266&320')
在通过TOAD运行时,它将 & 视为一些变量占位符,并询问其值。如果它是1-2个占位符,那么我可以在TOAD中设置它,但是in子句中有200个字符串。
如何提出此查询?
我想将DATASET导出为SQL INSERT语句,因此我不能在SQL-PLUS中使用它。
答案 0 :(得分:7)
SET DEFINE OFF;
可以关闭变量提示..
或
SET ESCAPE ON;
SELECT 'blah \& blah' AS DES FROM DUAL;
答案 1 :(得分:4)
在TOAD中,您可以从选项对话框中禁用替换变量的提示:
您需要取消选中: 查看 - > Toad选项 - >执行/编译 - >提示替换变量。
答案 2 :(得分:2)
您可以使用连接来转义&符号,如下所示:
select * from table
where table_id in ('265' || '&' || '310', '266' || '&' || '320')