我想知道是否有可能做这样的事情(这不起作用):
select cast( (exists(select * from theTable where theColumn like 'theValue%') as bit)
看起来它应该是可行的,但许多应该在SQL中工作的东西不会;)我已经看到了这方面的解决方法(SELECT 1 where ... Exists ...)但似乎我应该能够将存在函数的结果转换为一点并完成它.
我有查询从表中查找某些客户.
SELECT COUNT(*)
FROM CUSTOMER
WHERE amount <> 0
AND customerid = 22
Run Code Online (Sandbox Code Playgroud)
customerid上有一个索引,因此DB会扫描customerid = 22的所有行.
由于通过检查计数是返回零还是大于零来处理结果,我该如何优化查询?也就是说,在第一个客户行,金额<> 0,如果所有行都是= 0,则查询返回0,然后返回1.