sql >> Base de Datos >  >> RDS >> SQLite

nullvalue:Mostrar valores NULL en SQLite

Cuando se utiliza la interfaz de línea de comandos (CLI) de SQLite, de forma predeterminada, cada vez que una consulta devuelve un valor nulo, el resultado es una cadena vacía ('' ).

Podemos cambiar esto usando -nullvalue opción de línea de comando al iniciar SQLite.

También podemos usar el .nullvalue comando dot si ya estamos en la CLI de SQLite.

El -nullvalue Opción

Podemos usar el -nullvalue opción al iniciar SQLite.

He aquí un ejemplo:

sqlite3 -nullvalue null

En este caso, cada vez que encuentro un valor nulo, el texto null Será devuelto. Usé null en este ejemplo, pero podría ser cualquier texto.

Lanzar SQLite sin esa opción habría establecido -nullvalue a la cadena vacía.

El .nullvalue Comando de puntos

Si ya estamos en SQLite, no necesitamos salir y reiniciar para cambiar nuestro nullvalue ajustes. Podemos usar el .nullvalue comando de punto en su lugar

Ejemplo:

.nullvalue null

Para que quede claro, eso debe ejecutarse desde el shell de comandos de SQLite (es decir, después de haber iniciado SQLite).

Nuevamente, podemos usar cualquier texto aquí para representar valores nulos.

Ejemplo

Establezcamos nullvalue al iniciar SQLite:

sqlite3 -nullvalue n/a

Ahora, cada vez que se devuelve un valor nulo, la cadena n/a se emitirá.

Hagamos eso:

SELECT 1/0;

Resultado:

+-----+
| 1/0 |
+-----+
| n/a |
+-----+

Dividir un número por cero devuelve un valor nulo. En nuestro caso, obtenemos n/a , que es exactamente como se esperaba.

Ahora cambiemos nuestro nullvalue configuración:

.nullvalue null

Y ejecuta la consulta de nuevo:

SELECT 1/0;

Resultado:

+------+
| 1/0  |
+------+
| null |
+------+

Ahora obtenemos la cadena null cada vez que se devuelve un valor nulo.

La configuración predeterminada

Supongamos que lanzamos SQLite sin configurar nullvalue :

sqlite3

Aquí, abrimos la terminal de nuestra computadora o el símbolo del sistema e ingresamos el comando para iniciar SQLite (es decir, sqlite3 ) sin especificar ninguna opción.

Ahora, cuando ejecutamos una consulta que devuelve un valor nulo, obtenemos la cadena vacía:

SELECT 1/0;

Resultado:

+-----+
| 1/0 |
+-----+
|     |
+-----+

Ese es el resultado predeterminado para valores nulos. Es lo que obtenemos cuando no usamos el -nullvalue opción o .nullvalue comando punto.