SQLite NULL 值学习笔记
什么是NULL值?
在SQLite中,NULL是一个特殊的值,用于表示没有值、未知或不适用。NULL并不等于零或空字符串,它是一个独立的概念。如果一列被定义允许NULL值,那么这个列中可以存储NULL值。
如何使用NULL值?
我们可以使用IS NULL和IS NOT NULL条件来检查是否存在NULL值或非NULL值。例如,我们有一个名为students的表格,其中有一列为age,我们可以使用以下语句查询所有年龄为空的学生:
Copy CodeSELECT * FROM students WHERE age IS NULL;
类似地,我们也可以查询所有年龄不为空的学生:
Copy CodeSELECT * FROM students WHERE age IS NOT NULL;
实例演示
假设我们有以下表格movies:
id | title | rating |
---|---|---|
1 | The Shawshank Redemption | 9.3 |
2 | The Godfather | 9.2 |
3 | The Dark Knight | NULL |
4 | 12 Angry Men | 8.9 |
在这个表格中,有一部电影The Dark Knight没有评分(即rating为NULL)。我们可以使用以下语句查询所有有评分的电影:
Copy CodeSELECT * FROM movies WHERE rating IS NOT NULL;
这将返回以下结果:
id | title | rating |
---|---|---|
1 | The Shawshank Redemption | 9.3 |
2 | The Godfather | 9.2 |
4 | 12 Angry Men | 8.9 |
我们也可以使用以下语句查询所有没有评分的电影:
Copy CodeSELECT * FROM movies WHERE rating IS NULL;
这将返回以下结果:
id | title | rating |
---|---|---|
3 | The Dark Knight | NULL |
总结
NULL值在SQLite中是一个重要的概念,允许我们存储未知或无适用值。我们可以使用IS NULL和IS NOT NULL条件来查询包含或不包含NULL值的数据。理解和正确使用NULL值对于开发者来说是非常重要的。