Aprende SQL con 100 consultas para científicos de datos
(gvwilson.github.io)SQL for the Weary
- Público objetivo: Rachel, con una maestría en biología celular, trabaja en análisis celular en un hospital de investigación y quiere convertirse en científica de datos.
- Conocimientos previos necesarios: comandos básicos de Unix y capacidad para analizar datos tabulares.
- Resultados de aprendizaje: explicar la diferencia entre una base de datos y un administrador de bases de datos, escribir SQL, definir tablas y manipular datos, explicar los tipos de joins, usar funciones de ventana para trabajar con filas adyacentes, comprender transacciones y triggers, manipular datos JSON con SQL e interactuar con bases de datos mediante Python.
Configuración
- Descargar la versión más reciente: descomprimir en un directorio temporal los archivos que incluyen ejemplos de bases de datos SQLite, consultas SQL y scripts de Python.
Conceptos de fondo
- Base de datos: conjunto de datos que se puede almacenar y consultar.
- Sistema de gestión de bases de datos (DBMS): programa que administra un tipo específico de base de datos.
- SQLite: guarda la base de datos en un solo archivo; PostgreSQL distribuye la información en varios archivos para lograr mayor rendimiento.
- Sistema de gestión de bases de datos relacional (RDBMS): almacena los datos en tablas y los consulta usando SQL.
- Base de datos NoSQL: también existen bases de datos como MongoDB que no usan tablas.
Conexión a la base de datos
- Conexión a la base de datos: no es una consulta real, pero es un paso necesario antes de realizar otras operaciones.
Comandos administrativos
- Comandos administrativos de SQLite: no forman parte del SQL estándar, y los comandos especiales de PostgreSQL comienzan con
\. - Formato de salida: usar
.headers ony.mode markdownpara mostrar los resultados de forma legible.
Manipulación de tablas
- Crear tablas: definir tablas y columnas con el comando
create table. - Insertar datos: agregar datos a una tabla con el comando
insert into. - Actualizar filas: cambiar los datos de las filas que cumplen una condición específica con el comando
update. - Eliminar filas: quitar las filas que cumplen una condición específica con el comando
delete from.
Joins
- Join: operación para combinar información de dos tablas.
- Inner join: usar
inner joinpara combinar solo las filas coincidentes de ambas tablas. - Left join: usar
left joinpara conservar todas las filas de la tabla izquierda y rellenar connulllos valores faltantes de la tabla derecha.
Funciones de agregación
- Agregación: operación para combinar varios valores en uno solo.
- Funciones de agregación comunes: usar
sum,max,min,avgy otras para agregar datos. - Agrupación: usar
group bypara agrupar filas según combinaciones únicas de columnas específicas y realizar agregaciones para cada grupo.
La opinión de GN⁺
- Este artículo es un recurso útil para ayudar a comprender los conceptos básicos de las bases de datos y SQL, especialmente para ingenieros de software principiantes o personas interesadas en la ciencia de datos.
- Explica diversas funciones de SQL con ejemplos reales, y ofrece conocimientos prácticos sobre administración y manipulación de bases de datos.
- En particular, temas como joins de bases de datos, funciones de agregación y manipulación de tablas son muy importantes en tareas relacionadas con análisis de datos, y este artículo ayuda a entender estos conceptos con claridad.
1 comentarios
Comentarios de Hacker News
left join. Este tipo de explicación es muy común, pero puede resultar engañosa.