要查看我的数据库中是否有Todd,我目前正在执行以下操作:
SELECT * FROM MyTable WHERE name='Todd' LIMIT 1
然后检查Cursor以查看它的大小是否== 1.如果条件为false或true而不是字段列表,是否有办法从select语句返回0或1?
答案 0 :(得分:1)
你可以做到
SELECT COUNT(*) it_exists
FROM
(
SELECT 1
FROM MyTable
WHERE name = 'Todd'
LIMIT 1
) q;
内部选择保证应用LIMIT
。意思是如果假设有数千个匹配的行,数据库引擎将停止并在第一个之后返回结果,而不是通过所有这些结果。
输出
| it_exists | |-----------| | 1 |
这是 SQLFiddle 演示