SQLite Sentencia SELECT

De SQLiteSELECTLa sentencia se utiliza para obtener datos de las tablas de una base de datos SQLite y devuelve los datos en forma de tabla de resultados. Estas tablas de resultados también se conocen como conjuntos de resultados.

Sintaxis

La sintaxis básica de la sentencia SELECT de SQLite es la siguiente:

SELECT column1, column2, columnN FROM table_name;

Aquí, column1, column2... son los campos de la tabla, cuyos valores son los que desea obtener. Si desea obtener todos los campos disponibles, puede usar la siguiente sintaxis:

SELECT * FROM table_name;

Ejemplos

Supongamos que la tabla COMPANY tiene los siguientes registros:

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

A continuación se muestra un ejemplo que usa la sentencia SELECT para obtener y mostrar todos estos registros. Aquí, los dos primeros comandos se utilizan para configurar la salida con el formato correcto.

sqlite>.header on
sqlite>.mode column
sqlite> SELECT * FROM COMPANY;

Finalmente, obtendrá el siguiente resultado:

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

Si solo desea obtener los campos especificados de la tabla COMPANY, use la siguiente consulta:

sqlite> SELECT ID, NAME, SALARY FROM COMPANY;

La consulta anterior producirá el siguiente resultado:

ID          NAME        SALARY
----------  ----------  ----------
1           Paul        20000.0
2           Allen       15000.0
3           Teddy       20000.0
4           Mark        65000.0
5           David       85000.0
6           Kim         45000.0
7           James       10000.0

Configurar el ancho de las columnas de salida

En ocasiones, debido al ancho predeterminado de las columnas a mostrar,.mode columnen este caso, la salida se trunca. En este punto, puede usar el.width num, num....comando para configurar el ancho de las columnas mostradas, de la siguiente manera:

sqlite>.width 10, 20, 10
sqlite>SELECT * FROM COMPANY;

El anterior.widthcomando establece el ancho de la primera columna en 10, el de la segunda columna en 20 y el de la tercera columna en 10. Por lo tanto, la sentencia SELECT anterior dará el siguiente resultado:

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

Información del esquema

Debido a que todos loscomandos de puntosolo están disponibles en el indicador de SQLite, cuando programe con SQLite, debe usar la siguiente sentencia SELECT con la tablasqlite_masterpara enumerar todas las tablas creadas en la base de datos:

sqlite> SELECT tbl_name FROM sqlite_master WHERE type = 'table';

Suponiendo que en testDB.db ya existe una única tabla COMPANY, se producirá el siguiente resultado:

tbl_name
----------
COMPANY

Puede listar la información completa sobre la tabla COMPANY, como se muestra a continuación:

sqlite> SELECT sql FROM sqlite_master WHERE type = 'table' AND tbl_name = 'COMPANY';

Suponiendo que en testDB.db ya existe una única tabla COMPANY, se producirá el siguiente resultado:

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