sql >> Database teknologi >  >> RDS >> SQLite

3 måder at erstatte NULL med "N/A" i SQLite

I SQLite, hvis du har brug for at erstatte NULL-resultater med tekst som "N/A", "None" eller endda teksten "NULL", kan du bruge en af ​​de tre løsninger nedenfor.

Eksempel på data

For det første er her et eksempel på en forespørgsel, der returnerer nogle NULL-værdier.

SELECT 
  CustomerId, 
  Fax  
FROM Customer
LIMIT 5;

Resultat:

CustomerId  Fax          
----------  -------------
1           +55 (12) 3923
2                        
3                        
4                        
5           +420 2 4172 5

Bemærk, at række 2, 3 og 4 indeholder NULL-værdier i Fax kolonne.

Vi kan bruge metoderne nedenfor til at ændre resultatet, så NULL-kolonnerne viser "N/A".

Funktionen ifnull()

ifnull() funktion accepterer to argumenter og returnerer det første, der ikke er NULL. Hvis begge argumenter er NULL, returnerer det NULL.

Så det første argument skal være den værdi, der kan være nullbar eller ikke, og det andet argument skal være den værdi, som du vil erstatte eventuelle NULL-værdier med.

Sådan kan vi ændre den tidligere forespørgsel, så den viser "Ikke tilgængelig", hvor som helst Fax kolonnen er NULL.

SELECT 
  CustomerId, 
  ifnull(Fax, 'N/A') AS Fax
FROM Customer
LIMIT 5;

Resultat:

CustomerId  Fax          
----------  -------------
1           +55 (12) 3923
2           N/A          
3           N/A          
4           N/A          
5           +420 2 4172 5

Funktionen coalesce()

coalesce() Funktionen ligner meget ifnull() fungere. Forskellen er, at coalesce() accepterer mere end to argumenter. Det returnerer simpelthen det første ikke-NULL-argument.

Derfor kan vi bruge det på nøjagtig samme måde, som vi bruger ifnull() ved at give to argumenter.

SELECT 
  CustomerId, 
  coalesce(Fax, 'N/A') AS Fax
FROM Customer
LIMIT 5;

Resultat:

CustomerId  Fax          
----------  -------------
1           +55 (12) 3923
2           N/A          
3           N/A          
4           N/A          
5           +420 2 4172 5

.nullvalue Dot-kommandoen

Når du bruger SQLite-kommandolinjegrænsefladen, kan du bruge .nullvalue dot-kommando for at spare dig selv for at skulle bruge en af ​​de tidligere funktioner, hver gang du foretager en forespørgsel.

Når du bruger denne kommando, angiver du en streng, der vil blive brugt til at erstatte NULL-værdier.

Eksempel:

.nullvalue N/A

Nu, når du kører en forespørgsel, der returnerer NULL-værdier, vil strengen "N/A" erstatte disse NULL-værdier.

SELECT 
  CustomerId, 
  Fax  
FROM Customer 
LIMIT 5;

Resultat:

CustomerId  Fax          
----------  -------------
1           +55 (12) 3923
2           N/A          
3           N/A          
4           N/A          
5           +420 2 4172 5


  1. Sådan indsætter du resultaterne af en lagret procedure i en midlertidig tabel i SQL Server

  2. Vælg og rediger lodrette blokke i SQL Server Management Studio ( SSMS) - SQL Server / TSQL selvstudium del 9

  3. Hvordan får man størrelsen på en MySQL-database?

  4. SQLite - Kunne ikke åbne databasefilen