第一种写法:
SELECT count(*) FROM table where field=#{value}
然后判断count > 0,很普通的写法。
第二种写法:
SELECT EXISTS(SELECT 1 FROM table WHERE field=#{value})
这种返回直接用boolean接收了,不需要做判断。
第三种写法:
SELECT 1 FROM table where field=#{value} LIMIT 1
然后判断是否为null,null即为不存在,
这种写法, LIMIT 1 遇到存在的就会直接返回,效率较高。
结合第二种和第三种写法:
SELECT EXISTS(SELECT 1 FROM table where field=#{value} LIMIT 1)
直接返回boolean,也用了LIMIT 1。