我在Oracle中遇到问题;当我以这种方式执行查询时,有一个表DIT_NUMBERS_ASIG:
SELECT *
FROM DIT_NUMBERS_ASIG
WHERE number_asig = '1234567'; //Quotes
立即执行查询;但如果我执行此查询:
SELECT *
FROM DIT_NUMBERS_ASIG
WHERE number_asig = 1234567; //Without Quotes
查询速度很慢,大约需要2分钟。
问题是当我尝试从Java应用程序(使用JDBC)执行此语句时:
SELECT *
FROM DIT_NUMBERS_ASIG
WHERE number_asig = '1234567';
查询很慢,就像引号不存在一样。
如何执行查询但使用引号,因为如果查询没有引号
答案 0 :(得分:0)
我在SQLFiddle上提到的执行查询时并没有看到任何重大差异。我已经在一个表中添加了几行,并尝试通过传递上面提到的值(带和不带引号)来检索特定行。我认为没有任何区别。
<强> SQL Fiddle Demo 强>
可能的解决方案:。
*
语句中使用SELECT
。您也可以考虑检查Oracle Doc是否有SQL调优。