Prefacio
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Durante los últimos 20 años, he pasado muchas de mis horas de trabajo manipulando datos con SQL. Durante la mayor parte de esos años, he trabajado en empresas tecnológicas que abarcan una amplia gama de sectores de consumo y de empresa a empresa. En ese tiempo, los volúmenes de datos han aumentado espectacularmente, y la tecnología que llego a utilizar ha mejorado a pasos agigantados. Las bases de datos son más rápidas que nunca, y las herramientas de información y visualización utilizadas para comunicar el significado de los datos son más potentes que nunca. Sin embargo, algo que ha permanecido notablemente constante es que SQL es una parte fundamental de mi caja de herramientas.
Recuerdo cuando aprendí SQL por primera vez. Empecé mi carrera en finanzas, donde dominan las hojas de cálculo, y me había vuelto bastante buena escribiendo fórmulas y memorizando todos esos atajos de teclado. Un día me volví totalmente friki y pulsé Ctrl y Alt en todas las teclas de mi teclado para ver qué pasaba (y luego creé una hoja de trucos para mis compañeros). Eso era en parte diversión y en parte supervivencia: cuanto más rápido fuera con mis hojas de cálculo, más probabilidades tendría de terminar mi trabajo antes de medianoche para poder irme a casa y dormir un poco. El dominio de las hojas de cálculo me abrió las puertas de mi siguiente puesto, una startup en la que conocí por primera vez las bases de datos y SQL.
Parte de mi trabajo consistía en procesar datos de inventario en hojas de cálculo, y gracias a la escala inicial de Internet, los conjuntos de datos eran a veces de decenas de miles de filas. Esto era "big data" en aquella época, al menos para mí. Me acostumbré a ir a tomar un café o a comer mientras la CPU de mi ordenador estaba ocupada ejecutando su magia vlookup. Un día, mi jefe se fue de vacaciones y me pidió que me ocupara del almacén de datos que había construido en su portátil con Access. Actualizar los datos implicaba una serie de pasos: ejecutar consultas SQL en un portal, cargar los archivos csv resultantes en la base de datos y, a continuación, actualizar los informes de la hoja de cálculo. Tras la primera carga con éxito, empecé a trastear, tratando de entender cómo funcionaba, y a molestar a los ingenieros para que me mostraran cómo modificar las consultas SQL.
Me enganché, e incluso cuando pensé que podría cambiar de rumbo en mi carrera, he seguido volviendo a los datos. Manipular datos, responder preguntas, ayudar a mis colegas a trabajar mejor y de forma más inteligente, y aprender sobre las empresas y el mundo a través de conjuntos de datos nunca ha dejado de parecerme divertido y emocionante.
Cuando empecé a trabajar con SQL, no había muchos recursos de aprendizaje. Conseguí un libro sobre sintaxis básica, lo leí en una noche, y a partir de ahí aprendí sobre todo por ensayo y error. En los tiempos en que estaba aprendiendo, consultaba directamente las bases de datos de producción y más de una vez hice caer el sitio web con mi SQL demasiado ambicioso (o más bien mal escrito). Afortunadamente mis habilidades mejoraron, y con los años aprendí a trabajar hacia delante a partir de los datos de las tablas, y hacia atrás a partir de la salida necesaria, resolviendo retos y rompecabezas técnicos y lógicos para escribir consultas que devolvieran los datos correctos. Acabé diseñando y construyendo almacenes de datos para reunir datos de distintas fuentes y evitar la caída de bases de datos de producción críticas. He aprendido mucho sobre cuándo y cómo agregar datos antes de escribir la consulta SQL y cuándo dejar los datos en una forma más cruda.
He comparado notas con otras personas que se introdujeron en el mundo de los datos más o menos en la misma época, y está claro que la mayoría aprendimos de la misma manera ad hoc. Los más afortunados tenían compañeros con los que compartir técnicas. La mayoría de los textos sobre SQL son introductorios y básicos (¡sin duda hay un lugar para ellos!) o están dirigidos a desarrolladores de bases de datos. Hay pocos recursos para usuarios avanzados de SQL que se centren en el trabajo de análisis. El conocimiento tiende a estar encerrado en individuos o pequeños equipos. Uno de los objetivos de este libro es cambiar esta situación, proporcionando a los profesionales una referencia sobre cómo resolver problemas de análisis habituales con SQL, y espero que inspirando nuevas indagaciones en los datos mediante técnicas que quizá no hayas visto antes.
Convenciones utilizadas en este libro
En este libro se utilizan las siguientes convenciones tipográficas:
- Cursiva
-
Indica nuevos términos, URL, direcciones de correo electrónico, nombres de archivo, extensiones de archivo y palabras clave.
Constant width
-
Se utiliza en los listados de programas, así como dentro de los párrafos para referirse a elementos del programa como nombres de variables o funciones, bases de datos, variables de entorno y sentencias.
Constant width bold
-
Muestra comandos u otros textos que deben ser tecleados literalmente por el usuario.
Constant width italic
-
Muestra el texto que debe sustituirse por valores proporcionados por el usuario o por valores determinados por el contexto.
Consejo
Este elemento significa un consejo o sugerencia.
Nota
Este elemento significa una nota general.
Advertencia
Este elemento indica una advertencia o precaución.
Utilizar ejemplos de código
El material complementario (ejemplos de código, ejercicios, etc.) se puede descargar en https://github.com/cathytanimura/sql_book.
Si tienes una pregunta técnica o un problema al utilizar los ejemplos de código, envía un correo electrónico a bookquestions@oreilly.com.
Este libro está aquí para ayudarte a hacer tu trabajo. En general, si se ofrece código de ejemplo con este libro, puedes utilizarlo en tus programas y documentación. No es necesario que te pongas en contacto con nosotros para pedirnos permiso, a menos que estés reproduciendo una parte importante del código. Por ejemplo, escribir un programa que utilice varios trozos de código de este libro no requiere permiso. Vender o distribuir ejemplos de los libros de O'Reilly sí requiere permiso. Responder a una pregunta citando este libro y el código de ejemplo no requiere permiso. Incorporar una cantidad significativa de código de ejemplo de este libro en la documentación de tu producto sí requiere permiso.
Agradecemos la atribución, pero en general no la exigimos. Una atribución suele incluir el título, el autor, la editorial y el ISBN. Por ejemplo: "SQL para el Análisis de Datos por Cathy Tanimura (O'Reilly). Copyright 2021 Cathy Tanimura, 978-1-492-08878-3".
Si crees que el uso que haces de los ejemplos de código no se ajusta al uso legítimo o al permiso concedido anteriormente, no dudes en ponerte en contacto con nosotros en permissions@oreilly.com.
Aprendizaje en línea O'Reilly
Nota
Durante más de 40 años, O'Reilly Media ha proporcionado formación tecnológica y empresarial, conocimientos y perspectivas para ayudar a las empresas a alcanzar el éxito.
Nuestra red única de expertos e innovadores comparten sus conocimientos y experiencia a través de libros, artículos y nuestra plataforma de aprendizaje online. La plataforma de aprendizaje en línea de O'Reilly te ofrece acceso bajo demanda a cursos de formación en directo, rutas de aprendizaje en profundidad, entornos de codificación interactivos y una amplia colección de textos y vídeos de O'Reilly y de más de 200 editoriales. Para más información, visita http://oreilly.com.
Cómo contactar con nosotros
Dirige tus comentarios y preguntas sobre este libro a la editorial:
- O'Reilly Media, Inc.
- 1005 Gravenstein Highway Norte
- Sebastopol, CA 95472
- 800-998-9938 (en Estados Unidos o Canadá)
- 707-829-0515 (internacional o local)
- 707-829-0104 (fax)
Tenemos una página web para este libro, donde se enumeran erratas, ejemplos y cualquier información adicional. Puedes acceder a esta página en https://oreil.ly/sql-data-analysis.
Envía un correo electrónico a bookquestions@oreilly.com para comentar o hacer preguntas técnicas sobre este libro.
Para obtener noticias e información sobre nuestros libros y cursos, visita http://oreilly.com.
Encuéntranos en Facebook: http://facebook.com/oreilly
Síguenos en Twitter: http://twitter.com/oreillymedia
Míranos en YouTube: http://www.youtube.com/oreillymedia
Agradecimientos
Este libro no habría sido posible sin los esfuerzos de varias personas de O'Reilly. Andy Kwan me reclutó para este proyecto. Amelia Blevins y Shira Evans me guiaron a lo largo del proceso y me proporcionaron útiles comentarios. Kristen Brown guió el libro durante el proceso de producción. Arthur Johnson mejoró la calidad y claridad del texto y, sin querer, me hizo pensar más profundamente en las palabras clave de SQL.
A lo largo de los años, muchos colegas han desempeñado un papel importante en mi viaje por el SQL, y estoy agradecido por sus tutoriales, consejos y código compartido, y por el tiempo dedicado a intercambiar ideas para resolver problemas de análisis a lo largo de los años. Sharon Lin me abrió los ojos a las expresiones regulares. Elyse Gordon me dio muchos consejos para escribir libros. Dave Hoch y nuestras conversaciones sobre el análisis de experimentos inspiraron el Capítulo 7. Dan, Jim y Stu, de la Cámara de las Estrellas, han sido durante mucho tiempo mis amigos favoritos para divertirme. También estoy agradecido a todos los colegas que me han hecho preguntas difíciles a lo largo de los años y que, una vez respondidas, me han hecho otras aún más difíciles.
Me gustaría dar las gracias a mi marido Rick, a mi hijo Shea, a mis hijas Lily y Fiona, y a mi madre Janet por su amor, sus ánimos y, sobre todo, por regalarme su tiempo para trabajar en este libro. Amy, Halle, Jessi y la Guarida de Slack me mantuvieron cuerda y riendo durante meses de escritura y encierro pandémico.
Get SQL para análisis de datos now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.