哪个查询会更快
EXISTS时的SELECT CASE(SELECT 1 FROM表WHERE条件) 然后'Y' ELSE'N' 从双重结束
或
SELECT 1 FROM table WHERE condition
对于他们两个我将 fetchSize 设置为1。
但是,我想知道我是否使用第二个查询,我只需要检查 if(rs.next()),而对于第一个查询,我需要检查一个附加条件 rs.getString(1).equals( “Y”)。同时我想知道如果在sql中存在时,以某种方式使查询更快?
我已经检查了其他问题The fastest way to check if some records in a database table?和Fastest way to check if set exists in database set,他们谈到使用存在。所以,只是想知道我是否应该使用exists,而如果我需要使用它来使查询更快,那么它如何使查询更快?
答案 0 :(得分:1)
关于你可以获得' no_data_found'或者' to_many_rows'导致阅读字典以获取错误代码等等使用语句' SELECT 1 FROM table WHERE condition'第一种方式会更快
答案 1 :(得分:0)
SELECT 1 FROM table WHERE condition
如果结果集没有返回任何行,则表示未满足条件,否则符合条件。
它更好,更清洁,更短,更快。