English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQLiteNULL值

SQLite NULL是用来表示缺失值的术语。表中的空值是字段中看起来为空的值。

具有 NULL 值的字段是没有值的字段。理解 NULL 值与零值或包含空格的字段是不同的,这一点非常重要。

语法

Di seguito è riportatoNULL创建表时使用的基本语法。

SQLite> CREATE TABLE COMPANY,
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS                                 CHAR(50),
   SALARY                                   REAL);

Qui,NOT NULLRappresenta che la colonna dovrebbe accettare esplicitamente un valore di tipo dati dato. Ci sono due colonne che non abbiamo utilizzato NOT NULL, il che significa che queste colonne possono essere NULL.

I campi con valori NULL sono quelli lasciati vuoti durante la creazione del record.

Esempio online

I valori NULL possono causare problemi nella selezione dei dati, perché quando si confrontano valori sconosciuti con qualsiasi altro valore, il risultato è sempre sconosciuto e non inclusi nel risultato finale. Consideriamo la seguente tabella COMPANY con i seguenti record-

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1                                       Paul                               32                                       California                         20000.0
2                                       Allen                               25                                       Texas                               15000.0
3                                       Teddy                               23                                       Norway                           20000.0
4                                       Mark                               25                                       Rich-Mond                       65000.0
5                                       David                               27                                       Texas                               85000.0
6                                       Kim                                  22                                       South-Hall                       45000.0
7                                       James                               24                                       Houston                           10000.0

Usiamo l'istruzione UPDATE per impostare alcuni valori NULL, come segue:

sqlite> UPDATE COMPANY SET ADDRESS = NULL, SALARY = NULL where ID IN(6,7);

Ora, la tabella COMPANY avrà i seguenti record.

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1                                       Paul                               32                                       California                         20000.0
2                                       Allen                               25                                       Texas                               15000.0
3                                       Teddy                               23                                       Norway                           20000.0
4                                       Mark                               25                                       Rich-Mond                       65000.0
5                                       David                               27                                       Texas                               85000.0
6           Kim         22
7           James       24

Ora, diamo un'occhiata aÈ NON NULLL'uso dell'operatore, per elencare tutte le registrazioni con SALARY non NULL.

sqlite> SELECT ID, NAME, AGE, ADDRESS, SALARY
        FROM AZIENDA
        WHERE SALARY È NON NULL;

La seguente istruzione SQLite produrrà il seguente risultato-

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1                                       Paul                               32                                       California                         20000.0
2                                       Allen                               25                                       Texas                               15000.0
3                                       Teddy                               23                                       Norway                           20000.0
4                                       Mark                               25                                       Rich-Mond                       65000.0
5                                       David                               27                                       Texas                               85000.0

Di seguito è riportatoÈ NULLL'uso dell'operatore, che elencherà tutte le registrazioni con SALARY come NULL.

sqlite> SELECT ID, NAME, AGE, ADDRESS, SALARY
        FROM AZIENDA
        WHERE SALARY IS NULL;

上面的SQLite语句将产生以下结果。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
6           Kim         22
7           James       24