0

我有一个表,我动态地填充了一些我想为其创建一些统计信息的数据。我有一个值,其中一些值遵循某种模式,因此我创建了一个附加列,在其中将值映射到其他值,以便对它们进行分组。

现在,在我运行统计数据之前,我需要检查是否必须重新映射这些值,这意味着我必须检查是否有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
;
4

1 回答 1

4

用于LIMIT 1选择返回的第一行:

SELECT 1
FROM my_table t
WHERE t.status_rd IS NULL
LIMIT 1

注意:我根据您的问题描述将 where 子句从 更改为IS NOT NULLIS NULL这可能正确也可能不正确。

于 2013-06-17T14:24:23.807 回答