Saltar al contenido
← Sesión 17

Ficha · Sesión 17 · Módulo IV, Los datos

«De la pregunta a la herramienta»

¿Cómo se le hace una pregunta precisa a una tabla, y cómo se sabe que la respuesta es correcta?

Con una consulta SQL que filtra, agrupa y resume. Una consulta se acepta cuando sus cifras cuadran con el total y con un cálculo hecho a mano, no cuando corre sin error.

SQL: preguntarle a tus datos

El oficio que ya tienes

Hacer tabulados y cruzar variables. Quien ha contado respuestas por grupo en una hoja de cálculo ya piensa en SQL: filtrar, agrupar, contar. Y quien ha revisado un tabulado ajeno sabe que el primer paso es ver si los totales cuadran.

En Marienthal

La pregunta de clase es cuántas horas de trabajo no remunerado reporta cada grupo de edad. Se le pide al agente en esas palabras; devuelve una consulta con GROUP BY grupo_edad, COUNT(*) y AVG(horas_no_remuneradas), y explica cada renglón. Antes de usar la cifra, la suma de las personas por grupo tiene que dar el total de respuestas, y quienes dejaron las horas en blanco se cuentan aparte.

En tu proyecto

Escribe en palabras tres preguntas que tu proyecto le hará a sus datos. Pídele al agente la consulta de cada una, córrelas sobre las respuestas de la prueba piloto y verifica al menos una a mano.

Conceptos

Consulta
Una instrucción en SQL que pide datos a la base. Leerla no cambia nada en la tabla.
Condición
Lo que va después de WHERE: una regla que cada fila cumple o no, como grupo_edad = '30 a 44'.
Agregación
Resumir muchas filas en un número: COUNT las cuenta, AVG promedia, SUM suma.
NULL
La marca de un valor que no existe, como una pregunta sin responder. No es cero ni texto vacío.

Instrumental

.mode table
Mostrar los resultados de sqlite3 como una tabla con encabezados.
SELECT * FROM respuestas LIMIT 10;
Ver las primeras diez filas antes de preguntar nada.
SELECT COUNT(*) FROM respuestas WHERE cansancio >= 4;
Contar cuántas personas terminan el día muy cansadas.
SELECT grupo_edad, COUNT(*), AVG(horas_no_remuneradas) FROM respuestas GROUP BY grupo_edad;
Personas y promedio de horas de trabajo no remunerado en cada grupo de edad.
SELECT COUNT(*) FROM respuestas;
El total contra el que se comprueba que los conteos por grupo cuadran.

Para tu bitácora

¿Qué comprobación harías antes de creerle a una cifra que salió de una consulta escrita por el agente?

viridiana.dev · Viridiana