我有一个表,我动态填充了一些我想要创建一些统计数据的数据。我有一个值在某个模式后面有一些值,所以我创建了一个额外的列,我将值映射到其他值,以便我可以对它们进行分组。
在我运行统计信息之前,我需要检查是否必须重新映射这些值,这意味着我必须检查该列中是否有null
值。
我可以选择这样的选择:
select distinct 1
from my-table t
where t.status_rd is not null
;
缺点是,这只返回一行,但它必须执行完整选择。有没有什么方法可以阻止第一次遭遇的选择?我对确切的行不感兴趣,因为当至少有一行时,我必须对所有这些行进行更新,但我想避免每次都不必要地运行更新。
在Oracle中,我会使用rownum,但这在SQLite中不存在
select 1
from my-table t
where t.status_rd is not null
and rownum <= 1
;
答案 0 :(得分:4)
使用LIMIT 1
选择返回的第一行:
SELECT 1
FROM my_table t
WHERE t.status_rd IS NULL
LIMIT 1
注意:我根据您的问题描述将where子句从IS NOT NULL
更改为IS NULL
。这可能是也可能不正确。