我有一个带有1个表和4个列的sqlite数据库。其中一列是可选的,可能包含NULL值。如果此列为空,我想在其他3列中获取值。
例如,
column 1 column 2 column 3 column4
a b d
e f g h
i j l
我希望在sqlite方面实现的目标是:
SELECT column1 WHERE column3 IS NULL;
由于IS NULL在SQLite中不起作用,我不知道如何实现这一点。我是一名具有很少数据库知识的iOS开发人员。任何帮助将不胜感激。
UPDATE1:@rptwsthi建议在第3列中包含默认值,这肯定会解决我的问题。但是,我认为这必须在创建数据库时完成,我是否正确?或者这可以通过其他方式完成吗?
UPDATE2:我确实引用了关于IS NULL和IS NOT NULL的SQLite文档。但只有IS NOT NULL返回值,IS NULL不起作用。它甚至没有抛出错误。
UPDATE3:我在第3栏中看到没有值的时候。我也使用终端命令。所以我的代码是
SELECT column1 WHERE column3 IS NULL;
此致 iSee的
答案 0 :(得分:2)
IS和IS NOT运算符的工作方式与=和!=相同,除非是一个或两个 操作数为NULL。在这种情况下,如果两个操作数均为NULL, 那么IS运算符的计算结果为1(真)和IS NOT运算符 评估为0(假)。如果一个操作数为NULL而另一个不是, 那么IS运算符的计算结果为0(false),IS NOT运算符为 1(真)。
根据这一点,IS NULL
在SQLite中应该可以正常工作。
答案 1 :(得分:1)
SQLite支持IS NULL功能
你能给你编码在xcode中编写查询的代码
我在sqllite中尝试了IS NULL,效果很好..